diff --git a/README.md b/README.md
index 42603a51..867aea04 100644
--- a/README.md
+++ b/README.md
@@ -21,9 +21,19 @@ An easy to use calendar for KaiOs
- Key 2: event slider in month view
- Key #: toggle moon phase view
+### Nextcloud account
+
+if you want to use an external calendar, you have to enter the correct server address.
+at nextcloud as follows:
+
+ - server: "https://xxxxx/remote.php/dav",
+ - username: "xxxxm",
+ - password: "xxxxx",
+
## Features
- Local Calendar
+- Nextcloud calendar
- subscribe to calendar
- moon phases
@@ -40,7 +50,14 @@ The app is not auto-updating. To update it, you have to follow the same steps yo
## to do
-calDav
+oAuth google
+
+### LICENSES
+
+This software (except KaiAds) is open source and licensed under the MIT License. View the source code.
+
+- tsdav https://github.com/natelindev/tsdav MIT License
+- mithril https://github.com/MithrilJS MIT License
## Donation
diff --git a/application/app.js b/application/app.js
index 8715fd63..11635f0f 100644
--- a/application/app.js
+++ b/application/app.js
@@ -6,6 +6,8 @@ import { toaster } from "./assets/js/helper.js";
import { validate } from "./assets/js/helper.js";
import { pick_image } from "./assets/js/helper.js";
import { bottom_bar } from "./assets/js/helper.js";
+import { popup } from "./assets/js/helper.js";
+
import { getMoonPhase } from "./assets/js/getMoonPhase.js";
import { fetch_ics } from "./assets/js/eximport.js";
import { export_ical } from "./assets/js/eximport.js";
@@ -17,16 +19,19 @@ import { stop_scan } from "./assets/js/scan.js";
import m from "mithril";
import { DAVClient } from "./assets/js/tsdav.js";
import { createCalendarObject } from "./assets/js/tsdav.js";
+import { propfind } from "./assets/js/tsdav.js";
+import { DAVNamespaceShort } from "./assets/js/tsdav.js";
+import { get_time } from "./assets/js/helper.js";
import { uid } from "uid";
+var moment = require("moment-timezone");
+
export let events = [];
export let accounts = [];
localforage.setDriver(localforage.LOCALSTORAGE);
-let callback_caldata_loaded = function () {
- //showCalendar(currentMonth, currentYear);
-};
+let callback_caldata_loaded = function () {};
let calendar_names = [
{
@@ -35,6 +40,29 @@ let calendar_names = [
data: "",
},
];
+/*
+let empty = [];
+localforage
+ .setItem("events", empty)
+ .then(function (value) {})
+ .catch(function (err) {
+ console.log(err);
+ });
+*/
+
+let style_calendar_cell = function () {
+ document.querySelectorAll("div.calendar-cell").forEach(function (e) {
+ let p = e.getAttribute("data-date");
+
+ if (event_check(p).event == true) {
+ e.classList.add("event");
+ }
+
+ if (rrule_check(p).rrule) {
+ e.classList.add("event");
+ }
+ });
+};
let load_caldav = function (action) {
accounts.forEach(function (item) {
@@ -50,7 +78,6 @@ let load_caldav = function (action) {
(async () => {
try {
- console.log("hello" + item.id);
await client.login();
} catch (e) {
//load cached data
@@ -85,48 +112,56 @@ let load_caldav = function (action) {
5000
);
}
- const calendars = await client.fetchCalendars();
- let k = [];
- for (let i = 0; i < calendars.length; i++) {
- const objects = await client.fetchCalendarObjects({
- calendar: calendars[i],
- });
+ try {
+ document.getElementById("icon-loading").style.opacity = 100;
+ const calendars = await client.fetchCalendars();
+ let k = [];
- let data_to_store = {
- "displayName": calendars[i].displayName,
- "syncToken": calendars[i].syncToken,
- "ctag": calendars[i].ctag,
- "url": calendars[i].url,
- "objects": objects,
- };
-
- k.push(data_to_store);
- //add cal name to list
- calendar_names.push({
- name: calendars[i].displayName,
- id: item.id,
- });
+ for (let i = 0; i < calendars.length; i++) {
+ const objects = await client.fetchCalendarObjects({
+ calendar: calendars[i],
+ });
- //cache caldata
- localforage
- .setItem(item.id, k)
- .then(function () {})
- .catch(function (err) {
- console.log(err);
+ let data_to_store = {
+ "displayName": calendars[i].displayName,
+ "syncToken": calendars[i].syncToken,
+ "ctag": calendars[i].ctag,
+ "url": calendars[i].url,
+ "objects": objects,
+ };
+
+ k.push(data_to_store);
+ //add cal name to list
+ calendar_names.push({
+ name: calendars[i].displayName,
+ id: item.id,
});
- //parse data
- objects.forEach(function (i) {
- parse_ics(
- i.data,
- callback_caldata_loaded,
- false,
- false,
- i.etag,
- i.url,
- item.id
- );
- });
+
+ //cache caldata
+ localforage
+ .setItem(item.id, k)
+ .then(function () {})
+ .catch(function (err) {
+ console.log(err);
+ });
+ //parse data
+ objects.forEach(function (i) {
+ parse_ics(
+ i.data,
+ callback_caldata_loaded,
+ false,
+ false,
+ i.etag,
+ i.url,
+ item.id
+ );
+ });
+ document.getElementById("icon-loading").style.opacity = 0;
+ style_calendar_cell();
+ }
+ } catch (e) {
+ console.log(e);
}
})();
});
@@ -157,7 +192,7 @@ let sync_caldav = function () {
}
try {
- const value = await localforage.getItem(accounts.id);
+ const value = await localforage.getItem(item.id);
for (let i = 0; i < value.length; i++) {
let s = {
@@ -178,9 +213,10 @@ let sync_caldav = function () {
});
};
-let create_caldav = function (event_data, calendar_id, calendar_name) {
+let create_caldav = function (event_data, calendar_id, calendar_name, event) {
+ popup("Please wait...", "show");
+
accounts.forEach(function (p) {
- console.log(p);
if (p.id == calendar_id) {
const client = new DAVClient({
serverUrl: p.server_url,
@@ -209,32 +245,64 @@ let create_caldav = function (event_data, calendar_id, calendar_name) {
if (calendars[i].displayName == calendar_name) {
i = calendars.length;
const result = await client.createCalendarObject({
- headers: client.authHeaders,
+ //headers: client.authHeaders,
calendar: calendars[0],
filename: uid(16) + ".ics",
iCalString: event_data,
+ headers: {
+ "content-type": "text/calendar; charset=utf-8",
+ "authorization": client.authHeaders.authorization,
+ },
});
if (result.ok) {
- m.route.set("/page_calendar");
+ try {
+ const [res] = await client.propfind({
+ url: result.url,
+ props: {
+ [`${DAVNamespaceShort.DAV}:getetag`]: {},
+ },
+ depth: "0",
+ headers: client.authHeaders,
+ });
+
+ event.etag = res.props.getetag;
+ } catch (e) {
+ console.log(e);
+ }
+
+ events.push(event);
+ setTimeout(function () {
+ popup("", "close");
+ m.route.set("/page_calendar");
+ }, 5000);
} else {
- toaster(
- "the event could not be saved, please try again later or save it in the local calendar.",
- 5000
+ popup(
+ "There was a problem saving, please try again later.",
+ "show"
);
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
}
}
}
} catch (e) {
- console.log(e);
+ /*
+ popup("There was a problem saving, please try again later.", "show");
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
+ */
}
})();
}
});
};
-let delete_caldav = function (etag, url, account_id) {
- console.log(etag, url, account_id);
+let delete_caldav = function (etag, url, account_id, uid) {
+ popup("Please wait...", "show");
+
accounts.forEach(function (p) {
if (p.id == account_id) {
const client = new DAVClient({
@@ -266,9 +334,119 @@ let delete_caldav = function (etag, url, account_id) {
},
headers: client.authHeaders,
});
- console.log(result);
+
+ if (result.ok) {
+ setTimeout(function () {
+ popup("", "close");
+ let temp = events;
+ events = "";
+
+ events = temp.filter((person) => person.UID != uid);
+ remove_alarm(uid);
+
+ clear_form();
+
+ m.route.set("/page_calendar");
+ }, 5000);
+ } else {
+ popup(
+ "There was a problem saving, please try again later.",
+ "show"
+ );
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
+ }
+ } catch (e) {
+ popup(
+ "There was a problem deleting, please try again later.",
+ "show"
+ );
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
+ }
+ })();
+ }
+ });
+};
+
+let update_caldav = function (etag, url, data, account_id) {
+ popup("Please wait...", "show");
+
+ accounts.forEach(function (p) {
+ if (p.id == account_id) {
+ const client = new DAVClient({
+ serverUrl: p.server_url,
+ credentials: {
+ username: p.user,
+ password: p.password,
+ },
+ authMethod: "Basic",
+ defaultAccountType: "caldav",
+ });
+ (async () => {
+ try {
+ await client.login();
+ } catch (e) {
+ if (e.message == "Invalid credentials")
+ toaster(
+ "there was a problem logging into your account " +
+ item.name +
+ " please check your account details",
+ 5000
+ );
+ }
+ try {
+ const result = await client.updateCalendarObject({
+ calendarObject: {
+ url: url,
+ data: data,
+ etag: etag,
+ },
+ headers: client.authHeaders,
+ });
+ if (result.ok) {
+ //get new ETAG
+ try {
+ const [res] = await client.propfind({
+ url: result.url,
+ props: {
+ [`${DAVNamespaceShort.DAV}:getetag`]: {},
+ },
+ depth: "0",
+ headers: client.authHeaders,
+ });
+
+ events.map((item) => {
+ if (item.etag === etag) {
+ item.etag = res.props.getetag;
+ return item.etag;
+ } else {
+ return item;
+ }
+ });
+ } catch (e) {
+ console.log(e);
+ }
+ setTimeout(function () {
+ popup("", "close");
+ m.route.set("/page_calendar");
+ }, 5000);
+ } else {
+ popup(
+ "There was a problem saving, please try again later.",
+ "show"
+ );
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
+ }
} catch (e) {
- console.log(e);
+ popup("There was a problem saving, please try again later.", "show");
+ setTimeout(function () {
+ popup("", "close");
+ }, 5000);
}
})();
}
@@ -312,6 +490,14 @@ localforage
console.log(err);
});
+//get event data
+let get_event_date = function () {
+ status.selected_day_id = document.activeElement.getAttribute("data-id");
+ update_event_date = events.filter(function (arr) {
+ return arr.UID == status.selected_day_id;
+ })[0];
+};
+
let months = [
"Jan",
"Feb",
@@ -343,8 +529,11 @@ export let status = {
update_event_id: "",
};
-let settings = {};
-
+let settings = {
+ default_notification: "",
+ ads: "",
+ timezone: moment.tz.guess(),
+};
let blob = "";
let load_settings = function () {
@@ -353,13 +542,12 @@ let load_settings = function () {
.then(function (value) {
if (value == null) return false;
settings = value;
- document.getElementById("default-notification-time").value =
- settings.default_notification;
})
.catch(function (err) {
console.log(err);
});
};
+load_settings();
//ads || ads free
@@ -411,7 +599,6 @@ let find_closest_date = function (search_term) {
if (search > new Date(events[i].dateStart).getTime()) {
t = events[i].dateStart;
i = events.length;
- console.log("result" + t);
}
}
}
@@ -741,8 +928,6 @@ Date.prototype.getWeek = function () {
};
let showCalendar = function (month, year) {
- //bottom_bar("add", "events", "options");
-
let firstDay = new Date(year, month).getDay();
let daysInMonth = 32 - new Date(year, month, 32).getDate();
@@ -784,7 +969,7 @@ let showCalendar = function (month, year) {
// set tabindex
cell.setAttribute("tabindex", date - 1);
-
+ cell.classList.add("calendar-cell");
// store date with leading 0
// because input type date
// accept only day month with leading zero
@@ -846,7 +1031,7 @@ let showCalendar = function (month, year) {
let clear_form = function () {
document.querySelectorAll("div#add-edit-event input").forEach(function (e) {
e.value = "";
- document.getElementById("form-image").src = "";
+ // document.getElementById("form-image").src = "";
blob = "";
});
};
@@ -862,14 +1047,37 @@ var root = document.getElementById("app");
var page_calendar = {
view: function () {
return m("div", { class: "width-100 height-100", id: "calendar" }, [
- m("h3", {
- class: "card-header",
- id: "monthAndYear",
- }),
+ m("div", { class: "flex justify-content-spacebetween", id: "" }, [
+ m("h3", {
+ class: "card-header",
+ id: "monthAndYear",
+ }),
+
+ m(
+ "div",
+ {
+ id: "icon-loading",
+ },
+ "loading"
+ ),
+ m(
+ "div",
+ {
+ id: "time",
+ oncreate: function (e) {
+ setInterval(function () {
+ document.getElementById("time").innerText = get_time();
+ }, 3600);
+ },
+ },
+ ""
+ ),
+ ]),
+
m(
"div",
{
- class: "calendar-head flex",
+ class: "calendar-head flex width-100",
},
[
m("div", "Sun"),
@@ -1051,6 +1259,10 @@ var page_options = {
},
oncreate: function () {
load_settings();
+ setTimeout(function () {
+ document.querySelector("#default-notification-time").value =
+ settings.default_notification;
+ }, 1000);
},
},
[
@@ -1359,170 +1571,193 @@ var page_accounts = {
var page_add_event = {
view: function () {
- return m("div", { id: "add-edit-event", tabindex: "0" }, [
- m(
- "div",
- {
- class: "item input-parent",
- tabindex: 0,
- oncreate: ({ dom }) =>
- setTimeout(function () {
- dom.focus();
- }, 500),
- },
- [
- m("label", { for: "event-title" }, "title"),
- m("input", { placeholder: "", type: "text", id: "event-title" }),
- ]
- ),
+ return m(
+ "div",
+ {
+ id: "add-edit-event",
+ tabindex: "0",
+ },
+ [
+ m(
+ "div",
+ {
+ class: "item input-parent",
+ tabindex: 0,
+ oncreate: ({ dom }) =>
+ setTimeout(function () {
+ dom.focus();
+ console.log("tz" + moment.tz.guess());
+ settings.timezone = moment.tz.guess();
+ }, 500),
+ },
+ [
+ m("label", { for: "event-title" }, "title"),
+ m("input", {
+ placeholder: "",
+ type: "text",
+ id: "event-title",
+ oncreate: function () {
+ load_settings();
+ },
+ }),
+ ]
+ ),
- m("div", { class: "item input-parent", tabindex: "1" }, [
- m("label", { for: "event-location" }, "Location"),
- m("input", { placeholder: "", type: "text", id: "event-location" }),
- ]),
- m("div", { class: "item input-parent", tabindex: "2" }, [
- m("label", { for: "event-date" }, "Start Date"),
- m("input", {
- placeholder: "YYYY-MM-DD",
- type: "date",
- id: "event-date",
- value: status.selected_day,
- }),
- ]),
+ m("div", { class: "item input-parent", tabindex: "1" }, [
+ m("label", { for: "event-location" }, "Location"),
+ m("input", { placeholder: "", type: "text", id: "event-location" }),
+ ]),
+ m("div", { class: "item input-parent", tabindex: "2" }, [
+ m("label", { for: "event-date" }, "Start Date"),
+ m("input", {
+ placeholder: "YYYY-MM-DD",
+ type: "date",
+ id: "event-date",
+ value: status.selected_day,
+ }),
+ ]),
- m("div", { class: "item input-parent", tabindex: "3" }, [
- m("label", { for: "event-date-end" }, "End Date"),
- m("input", {
- placeholder: "YYYY-MM-DD",
- type: "date",
- id: "event-date-end",
- }),
- ]),
- m("div", { class: "item input-parent", tabindex: "4" }, [
- m("label", { for: "event-time-start" }, "Start Time"),
- m("input", {
- placeholder: "hh:mm:ss",
- type: "time",
- id: "event-time-start",
- value:
- new Date().getHours() +
- ":" +
- new Date().getMinutes() +
- ":" +
- new Date().getSeconds(),
- }),
- ]),
- m("div", { class: "item input-parent", tabindex: "5" }, [
- m("label", { for: "event-time-end" }, "End Time"),
- m("input", {
- placeholder: "hh:mm:ss",
- type: "time",
- id: "event-time-end",
- }),
- ]),
- m("div", { class: "item input-parent", tabindex: "6" }, [
- m("label", { for: "event-description" }, "Description"),
- m("input", { placeholder: "", type: "text", id: "event-description" }),
- ]),
+ m("div", { class: "item input-parent", tabindex: "3" }, [
+ m("label", { for: "event-date-end" }, "End Date"),
+ m("input", {
+ placeholder: "YYYY-MM-DD",
+ type: "date",
+ id: "event-date-end",
+ }),
+ ]),
+ m("div", { class: "item input-parent", tabindex: "4" }, [
+ m("label", { for: "event-time-start" }, "Start Time"),
+ m("input", {
+ placeholder: "hh:mm:ss",
+ type: "time",
+ id: "event-time-start",
+ value:
+ new Date().getHours() +
+ ":" +
+ new Date().getMinutes() +
+ ":" +
+ new Date().getSeconds(),
+ }),
+ ]),
+ m("div", { class: "item input-parent", tabindex: "5" }, [
+ m("label", { for: "event-time-end" }, "End Time"),
+ m("input", {
+ placeholder: "hh:mm:ss",
+ type: "time",
+ id: "event-time-end",
+ }),
+ ]),
+ m("div", { class: "item input-parent", tabindex: "6" }, [
+ m("label", { for: "event-description" }, "Description"),
+ m("input", {
+ placeholder: "",
+ type: "text",
+ id: "event-description",
+ }),
+ ]),
- m(
- "div",
- {
- class: "item input-parent",
- id: "event-notification-time-wrapper",
- tabindex: "7",
- },
- [
- m("label", { for: "notification" }, "Notification"),
- m(
- "select",
- {
- id: "event-notification-time",
- oncreate: function () {
- document.getElementById("event-notification-time").value =
- settings.default_notification;
+ m(
+ "div",
+ {
+ class: "item input-parent",
+ id: "event-notification-time-wrapper",
+ tabindex: "7",
+ },
+ [
+ m("label", { for: "notification" }, "Notification"),
+ m(
+ "select",
+ {
+ id: "event-notification-time",
+ oncreate: function () {
+ setTimeout(function () {
+ document.querySelector("#event-notification-time").value =
+ settings.default_notification;
+ }, 2000);
+ },
},
- },
- [
- m("option", { value: "none" }, "none"),
- m("option", { value: "5" }, "5 minutes"),
- m("option", { value: "10" }, "10 minutes"),
- m("option", { value: "30" }, "30 minutes"),
- m("option", { value: "1440" }, "1 Day"),
- ]
- ),
- ]
- ),
+ [
+ m("option", { value: "none" }, "none"),
+ m("option", { value: "5" }, "5 minutes"),
+ m("option", { value: "10" }, "10 minutes"),
+ m("option", { value: "30" }, "30 minutes"),
+ m("option", { value: "1440" }, "1 Day"),
+ ]
+ ),
+ ]
+ ),
- m(
- "div",
- {
- class: "item input-parent",
- id: "event-recur-wrapper",
- tabindex: "8",
- },
- [
- m("label", { for: "notification" }, "Recur"),
- m("select", { id: "event-recur" }, [
- m("option", { value: "none" }, "none"),
- m("option", { value: "DAILY" }, "Daily"),
- m("option", { value: "WEEKLY" }, "Weekly"),
- m("option", { value: "MONTHLY" }, "Monthly"),
- m("option", { value: "YEARLY" }, "Yearly"),
- ]),
- ]
- ),
+ m(
+ "div",
+ {
+ class: "item input-parent",
+ id: "event-recur-wrapper",
+ tabindex: "8",
+ },
+ [
+ m("label", { for: "notification" }, "Recur"),
+ m("select", { id: "event-recur" }, [
+ m("option", { value: "none" }, "none"),
+ m("option", { value: "DAILY" }, "Daily"),
+ m("option", { value: "WEEKLY" }, "Weekly"),
+ m("option", { value: "MONTHLY" }, "Monthly"),
+ m("option", { value: "YEARLY" }, "Yearly"),
+ ]),
+ ]
+ ),
+ /*
+ m(
+ "button",
+ { class: "item", tabindex: "", id: "select-image", tabindex: "9" },
+ "add image"
+ ),
+ m("div", { id: "form-image-wrapper" }, [
+ m("img", { id: "form-image", "data-blob": "" }),
+ ]),
+ */
- m(
- "button",
- { class: "item", tabindex: "", id: "select-image", tabindex: "9" },
- "add image"
- ),
- m("div", { id: "form-image-wrapper" }, [
- m("img", { id: "form-image", "data-blob": "" }),
- ]),
+ m(
+ "div",
+ {
+ class: "item input-parent",
+ id: "event-calendar-wrapper",
+ tabindex: "9",
+ },
+ [
+ m("label", { for: "notification" }, "Calendars"),
+ m("select", { id: "event-calendar" }, [
+ calendar_names.map(function (item, index) {
+ return m(
+ "option",
+ {
+ value: item.id,
+ "data-calendar-data": item.data,
+ },
+ item.name
+ );
+ }),
+ ]),
+ ]
+ ),
- m(
- "div",
- {
- class: "item input-parent",
- id: "event-calendar-wrapper",
- tabindex: "10",
- },
- [
- m("label", { for: "notification" }, "Calendars"),
- m("select", { id: "event-calendar" }, [
- calendar_names.map(function (item, index) {
- return m(
- "option",
- {
- value: item.id,
- "data-calendar-data": item.data,
- },
- item.name
+ m(
+ "button",
+ {
+ tabindex: "10",
+ id: "save-event",
+ class: "item",
+ onclick: function () {
+ let n = document.getElementById("event-calendar");
+ store_event(
+ n.options[n.selectedIndex].value,
+ n.options[n.selectedIndex].text
);
- }),
- ]),
- ]
- ),
-
- m(
- "button",
- {
- tabindex: "11",
- id: "save-event",
- class: "item",
- onclick: function () {
- let n = document.getElementById("event-calendar");
- store_event(
- n.options[n.selectedIndex].value,
- n.options[n.selectedIndex].text
- );
+ },
},
- },
- "save"
- ),
- ]);
+ "save"
+ ),
+ ]
+ );
},
oncreate: function () {
bottom_bar("", "", "");
@@ -1560,7 +1795,12 @@ var page_edit_event = {
m("div", { class: "item input-parent", tabindex: "1" }, [
m("label", { for: "event-location" }, "Location"),
- m("input", { placeholder: "", type: "text", id: "event-location" }),
+ m("input", {
+ placeholder: "",
+ type: "text",
+ id: "event-location",
+ value: update_event_date.LOCATION,
+ }),
]),
m("div", { class: "item input-parent", tabindex: "2" }, [
m("label", { for: "event-date" }, "Start Date"),
@@ -1587,6 +1827,7 @@ var page_edit_event = {
placeholder: "hh:mm:ss",
type: "time",
id: "event-time-start",
+ value: update_event_date.time_start,
}),
]),
m("div", { class: "item input-parent", tabindex: "5" }, [
@@ -1617,13 +1858,19 @@ var page_edit_event = {
},
[
m("label", { for: "notification" }, "Notification"),
- m("select", { id: "event-notification-time" }, [
- m("option", { value: "none" }, "none"),
- m("option", { value: "5" }, "5 minutes"),
- m("option", { value: "10" }, "10 minutes"),
- m("option", { value: "30" }, "30 minutes"),
- m("option", { value: "1440" }, "1 Day"),
- ]),
+ m(
+ "select",
+ {
+ id: "event-notification-time",
+ },
+ [
+ m("option", { value: "none" }, "none"),
+ m("option", { value: "5" }, "5 minutes"),
+ m("option", { value: "10" }, "10 minutes"),
+ m("option", { value: "30" }, "30 minutes"),
+ m("option", { value: "1440" }, "1 Day"),
+ ]
+ ),
]
),
@@ -1633,6 +1880,10 @@ var page_edit_event = {
class: "item input-parent",
id: "event-recur-wrapper",
tabindex: "8",
+ oncreate: function () {
+ document.querySelector("#event-notification-time").value =
+ update_event_date.alarm;
+ },
},
[
m("label", { for: "notification" }, "Recur"),
@@ -1649,7 +1900,7 @@ var page_edit_event = {
),
]
),
-
+ /*
m(
"button",
{ class: "item", tabindex: "", id: "select-image", tabindex: "9" },
@@ -1660,11 +1911,11 @@ var page_edit_event = {
id: "form-image",
"src": update_event_date.ATTACH,
}),
- ]),
+ ]),*/
m(
"button",
{
- tabindex: "10",
+ tabindex: "9",
id: "delete-event",
class: "item",
onclick: function () {
@@ -1672,7 +1923,8 @@ var page_edit_event = {
delete_event(
update_event_date.etag,
update_event_date.url,
- update_event_date.id
+ update_event_date.id,
+ update_event_date.UID
);
},
},
@@ -1682,11 +1934,11 @@ var page_edit_event = {
m(
"button",
{
- tabindex: "11",
+ tabindex: "10",
id: "save-event",
class: "item",
onclick: function () {
- update_event();
+ update_event(update_event_date.id);
},
},
"update"
@@ -2035,7 +2287,7 @@ let convert_ics_date = function (t) {
let nn = t.replace(/-/g, "");
nn = nn.replace(/:/g, "");
nn = nn.replace(" ", "T");
- nn = nn + "Z";
+ nn = nn;
return nn;
};
@@ -2136,6 +2388,7 @@ let store_event = function (db_id, cal_name) {
isSubscription: false,
multidayevent: multidayevent,
ATTACH: blob,
+ id: db_id,
};
if (event.alarm != "none") {
@@ -2146,13 +2399,17 @@ let store_event = function (db_id, cal_name) {
add_alarm(calc_notification, event.SUMMARY, event.UID);
}
- if (db_id == "local-id" && cal_name == "local") {
+ if (db_id == "local-id") {
+ console.log("local");
events.push(event);
+ console.log(JSON.stringify(events));
let without_subscription = events.filter(
- (events) => events.isSubscription === false
+ (events) => events.id == "local-id"
);
+ console.log(JSON.stringify(without_subscription));
+
localforage
.setItem("events", without_subscription)
.then(function (value) {
@@ -2168,6 +2425,7 @@ let store_event = function (db_id, cal_name) {
console.log(err);
});
} else {
+ console.log("online");
create_caldav(
"BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//ZContent.net//Greg Calendar 1.0//EN\nCALSCALE:GREGORIAN\nBEGIN:VEVENT\nSUMMARY:" +
event.SUMMARY +
@@ -2175,11 +2433,17 @@ let store_event = function (db_id, cal_name) {
event.UID +
"\nSEQUENCE:0\nRRULE:" +
event.RRULE +
- "\nDTSTART:" +
+ "\nDTSTART;TZID=" +
+ settings.timezone +
+ ":" +
event.DTSTART +
- "\nDTEND:" +
+ "\nDTEND;TZID=" +
+ settings.timezone +
+ ":" +
event.DTEND +
- "\nDTSTAMP:" +
+ "\nDTSTAMP;TZID=" +
+ settings.timezone +
+ ":" +
event.DTSTAMP +
"\nLOCATION:" +
event.LOCATION +
@@ -2187,16 +2451,18 @@ let store_event = function (db_id, cal_name) {
event.DESCRIPTION +
"\nEND:VEVENT\nEND:VCALENDAR",
db_id,
- cal_name
+ cal_name,
+ event
);
}
+ style_calendar_cell();
};
// ////////////
// UPDATE EVENT
// /////////
-let update_event = function () {
+let update_event = function (account_id) {
let validation = true;
if (document.getElementById("event-title").value == "") {
toaster("Title can't be empty", 2000);
@@ -2267,15 +2533,17 @@ let update_event = function () {
if (validation == false) return false;
index.SUMMARY = document.getElementById("event-title").value;
- index.DESCRIPTION = document.getElementById("event-description").value;
index.LOCATION = document.getElementById("event-location").value;
+ index.DESCRIPTION = document.getElementById("event-description").value;
+ index.CLASS = "PRIVATE";
+ index.DTSTAMP = convert_ics_date(convert_dt_start);
index.DTSTART = convert_ics_date(convert_dt_start);
index.DTEND = convert_ics_date(convert_dt_end);
+ index.RRULE = rrule_convert();
index.dateEnd = document.getElementById("event-date-end").value;
index.dateStart = document.getElementById("event-date").value;
index.time_start = document.getElementById("event-time-start").value;
index.time_end = document.getElementById("event-time-end").value;
- index.RRULE = rrule_convert();
index.rrule_ = document.getElementById("event-recur").value;
index.isSubscription = false;
index.multidayevent = multidayevent;
@@ -2291,55 +2559,88 @@ let update_event = function () {
index.END = "VALARM";
add_alarm(calc_notification, index.SUMMARY, index.UID);
}
- }
- });
- let without_subscription = events.filter(
- (events) => events.isSubscription === false
- );
-
- localforage
- .setItem("events", without_subscription)
- .then(function (value) {
- // clean form
- side_toaster(" events.isSubscription === false
+ );
- clear_form();
- })
- .catch(function (err) {});
+ localforage
+ .setItem("events", without_subscription)
+ .then(function (value) {
+ // clean form
+ side_toaster(" person.UID != status.selected_day_id);
- remove_alarm(status.selected_day_id);
-
- let without_subscription = events.filter(
- (events) => events.isSubscription === false
- );
+let delete_event = function (etag, url, account_id, uid) {
+ if (etag) {
+ delete_caldav(etag, url, account_id, status.selected_day_id);
+ } else {
+ console.log("local");
+ //remove event
+ events = events.filter((person) => person.UID != uid);
+ remove_alarm(uid);
+ //store only local events
+ let without_subscription = events.filter(
+ (event) => event.id === "local-id"
+ );
- clear_form();
+ clear_form();
- localforage
- .setItem("events", without_subscription)
- .then(function (value) {
- export_ical("greg.ics", value);
- side_toaster("event deleted", 2000);
- m.route.set("/page_calendar");
- })
- .catch(function (err) {
- // This code runs if there were any errors
- console.log(err);
- });
-
- return f;
+ localforage
+ .setItem("events", without_subscription)
+ .then(function (value) {
+ export_ical("greg.ics", value);
+ side_toaster("event deleted", 2000);
+ m.route.set("/page_calendar");
+ })
+ .catch(function (err) {
+ // This code runs if there were any errors
+ console.log(err);
+ });
+ }
};
// event slider
@@ -2548,12 +2849,7 @@ function shortpress_action(param) {
return false;
}
- status.selected_day_id = document.activeElement.getAttribute("data-id");
- update_event_date = events.filter(function (arr) {
- return arr.UID == status.selected_day_id;
- })[0];
-
- console.log("event" + JSON.stringify(update_event_date));
+ get_event_date();
setTimeout(function () {
m.route.set("/page_edit_event");
diff --git a/application/assets/css/main.css b/application/assets/css/main.css
index de0d6481..ea963265 100644
--- a/application/assets/css/main.css
+++ b/application/assets/css/main.css
@@ -220,6 +220,10 @@ div#intro img {
}
}
+#icon-loading {
+ opacity: 0;
+}
+
#KaiOsAd {
height: 200px;
width: 240px;
@@ -256,7 +260,7 @@ div#side-toast {
position: fixed;
height: auto;
overflow: none;
- background: none;
+ background: orange;
color: white;
z-index: 10;
padding: 5px;
@@ -270,6 +274,30 @@ div#side-toast {
div#side-toast img {
width: 60px;
}
+
+div#popup {
+ position: fixed;
+ width: 100%;
+ height: 100%;
+ display: block;
+ z-index: 10000;
+ background: none;
+ display: none;
+}
+div#popup div {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+div#popup div div {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 10px;
+ background: orange;
+ border-radius: 10px;
+}
/*///////////////////////////
///VIEWS////////////////*/
diff --git a/application/assets/js/eximport.js b/application/assets/js/eximport.js
index 7af58acd..896973c7 100644
--- a/application/assets/js/eximport.js
+++ b/application/assets/js/eximport.js
@@ -214,7 +214,7 @@ export let parse_ics = function (
events.push(imp);
});
- if (saveOnDevice) {
+ if (saveOnDevice == true) {
let without_subscription = events.filter(
(events) => events.isSubscription === false
);
diff --git a/application/assets/js/helper.js b/application/assets/js/helper.js
index 19d55f54..3f972d5f 100644
--- a/application/assets/js/helper.js
+++ b/application/assets/js/helper.js
@@ -1,5 +1,13 @@
"use strict";
+export const get_time = function () {
+ let a = new Date();
+
+ time = `0${a.getHours()}`.slice(-2) + ":" + `0${a.getMinutes()}`.slice(-2);
+
+ return time;
+};
+
export let sort_array = function (arr, item_key, type) {
if (type == "date") {
arr.sort((a, b) => {
@@ -125,6 +133,20 @@ export let getManifest = function (callback) {
self.onerror = function () {};
};
+//popup
+export let popup = function (text, action) {
+ let m = document.querySelector("div#popup");
+ let mm = document.querySelector("div#popup div div");
+ if (action == "show") {
+ m.style.display = "block";
+ mm.innerText = text;
+ }
+ if (action == "close") {
+ m.style.display = "none";
+ mm.innerText = "";
+ }
+};
+
//top toaster
let queue = [];
let timeout;
diff --git a/application/index.html b/application/index.html
index e4179484..5f145fc5 100644
--- a/application/index.html
+++ b/application/index.html
@@ -36,6 +36,12 @@
+
+
diff --git a/dist/Lato-Regular.d489bf0a.ttf b/dist/Lato-Regular.d489bf0a.ttf
new file mode 100644
index 00000000..33eba8b1
Binary files /dev/null and b/dist/Lato-Regular.d489bf0a.ttf differ
diff --git a/dist/index.00930d66.css b/dist/index.00930d66.css
new file mode 100644
index 00000000..aa3dc7e7
--- /dev/null
+++ b/dist/index.00930d66.css
@@ -0,0 +1,781 @@
+:root {
+ --color-one: black;
+ --color-two: yellow;
+ --color-three: silver;
+ --color-four: #beb9b9;
+ --color-five: #d6e1e452;
+ --color-seven: #65d81849;
+ --color-eight: #2f52c430;
+}
+
+@font-face {
+ font-family: Lato-Regular;
+ src: url("Lato-Regular.d489bf0a.ttf");
+}
+
+*, :before, :after {
+ box-sizing: border-box;
+ overflow-wrap: break-word;
+ word-wrap: break-word;
+ hyphens: auto;
+ border: 0;
+ margin: 0;
+ padding: 0;
+}
+
+:focus {
+ background: var(--color-four);
+ outline: none;
+}
+
+::-moz-focus-inner {
+ border: 0;
+}
+
+.debug {
+ outline: 1px solid red;
+}
+
+html, body {
+ max-height: 100%;
+ max-width: 100%;
+ height: 100%;
+ width: 100%;
+ max-width: 100vw;
+ background: #fff;
+ margin: 0;
+ padding: 0;
+ font-family: Lato-Regular;
+ font-size: 1rem;
+ font-weight: 100;
+ line-height: 1.4rem;
+ position: relative;
+ overflow: hidden;
+}
+
+h1, h2, h3 {
+ font-size: 1rem;
+}
+
+img {
+ max-width: 90vw;
+ height: auto;
+ display: block;
+}
+
+img[src=""], img[src=" "] {
+ display: none;
+}
+
+button {
+ width: 90vw;
+ color: #000;
+ background: #fff;
+ border: 3px solid gray;
+ border-radius: 10px;
+ margin: 0 0 15px 5vw;
+ padding: 7px;
+ font-size: 1rem;
+}
+
+button:focus {
+ background: orange;
+ border: 0 solid gray;
+}
+
+select {
+ width: 90%;
+ font: inherit;
+ text-align: center;
+ box-sizing: border-box;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ background-color: #fff;
+ border: thin solid #383842;
+ border-radius: 4px;
+ margin: 10px 5% 0;
+ padding: 10px;
+ line-height: 1.5em;
+}
+
+textarea {
+ height: 30px;
+ width: 90%;
+ border: 1px solid silver;
+ padding: 3px;
+}
+
+input {
+ width: 90%;
+ height: 30px;
+ border: 1px solid silver;
+ padding: 3px;
+}
+
+label {
+ width: 100%;
+ text-align: center;
+ margin: 0 0 10px;
+ display: block;
+}
+
+.input-parent {
+ margin: 0 0 20px;
+ padding: 10px;
+}
+
+.input-parent:focus {
+ background: orange;
+}
+
+div#intro {
+ z-index: 100000;
+ min-width: 100%;
+ height: 100%;
+ background: #000;
+ animation-name: intro;
+ animation-duration: 1s;
+ animation-iteration-count: 1;
+ animation-delay: 2s;
+ animation-fill-mode: forwards;
+ position: fixed;
+}
+
+div#intro #version {
+ z-index: 100000;
+ color: #fff;
+ text-align: center;
+ background: #000;
+ font-size: .8rem;
+ animation-name: intro_img;
+ animation-duration: 2s;
+ animation-iteration-count: 1;
+ animation-delay: 1s;
+ animation-fill-mode: forwards;
+ position: absolute;
+ bottom: 20px;
+}
+
+div#intro img {
+ width: 180px;
+ height: auto;
+ margin-left: -90px;
+ animation-name: intro_img;
+ animation-duration: 2s;
+ animation-iteration-count: 1;
+ animation-delay: 1s;
+ animation-fill-mode: forwards;
+ position: absolute;
+ top: 50px;
+ left: 50%;
+}
+
+@keyframes intro_img {
+ from {
+ transform: translateX(0);
+ }
+
+ to {
+ transform: translateX(-450px);
+ }
+}
+
+@keyframes intro {
+ from {
+ opacity: 100;
+ display: block;
+ transform: translateY(0);
+ }
+
+ to {
+ opacity: 0;
+ display: none;
+ transform: translateY(0);
+ }
+}
+
+#icon-loading {
+ opacity: 0;
+}
+
+#KaiOsAd {
+ height: 200px;
+ width: 240px;
+}
+
+#KaiOsAds-Wrapper {
+ padding: 10px;
+}
+
+#KaiOsAds-Wrapper iframe {
+ width: 220px;
+}
+
+div#toast {
+ height: auto;
+ overflow: none;
+ color: #fff;
+ z-index: 10;
+ min-width: 100%;
+ transform-origin: 0 0;
+ background: #000;
+ padding: 5px;
+ transition: all .5s ease-in-out;
+ position: fixed;
+ top: 0;
+ transform: translate(0, -100px);
+}
+
+div#side-toast {
+ height: auto;
+ overflow: none;
+ color: #fff;
+ z-index: 10;
+ transform-origin: 0 0;
+ background: orange;
+ padding: 5px;
+ transition: all .5s ease-in-out;
+ position: fixed;
+ top: 70vh;
+ transform: translate(-100vw);
+}
+
+div#side-toast img {
+ width: 60px;
+}
+
+div#popup {
+ width: 100%;
+ height: 100%;
+ z-index: 10000;
+ background: none;
+ display: none;
+ position: fixed;
+}
+
+div#popup div {
+ justify-content: center;
+ align-items: center;
+ display: flex;
+}
+
+div#popup div div {
+ background: orange;
+ border-radius: 10px;
+ justify-content: center;
+ align-items: center;
+ padding: 10px;
+ display: flex;
+}
+
+article.events[data-alarm="none"] img.bell {
+ display: none;
+}
+
+div#calendar {
+ padding: 10px;
+}
+
+div#calendar h3 {
+ margin: 0 0 5px 3px;
+}
+
+div#calendar div.calendar-head {
+ background: var(--color-five);
+ margin: 0 0 5px;
+}
+
+div#calendar div.calendar-head div {
+ width: 13%;
+ text-align: center;
+ font-size: .8rem;
+}
+
+div#calendar div.calendar-head div:first-child {
+ margin: 0;
+}
+
+div#calendar div.calendar-body {
+ margin: 8px 0 0;
+ padding: 0;
+}
+
+div#calendar div#calendar-body div {
+ min-width: 13%;
+ text-align: center;
+ font-size: .8rem;
+ position: relative;
+ overflow: hidden;
+}
+
+div#calendar div#calendar-body div:focus {
+ background: none;
+}
+
+div#calendar div#calendar-body div div {
+ text-align: center;
+ background: #fff;
+ padding: 2px 0 0;
+}
+
+div#calendar div#calendar-body div div.today {
+ background: #78b7ff;
+}
+
+div#calendar div#calendar-body :focus span {
+ min-width: 10px;
+ min-height: 10px;
+ background: #000;
+ position: absolute;
+ top: -5px;
+ right: -5px;
+ transform: rotate(45deg);
+}
+
+div#calendar div#calendar-body div div.event {
+ background: pink !important;
+}
+
+div#calendar div#calendar-body div div.subscription {
+ background: #f5f5a9;
+}
+
+div#calendar div#calendar-body div div div.moon-phase-0 {
+ background-image: url("moon1.fc1afde6.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-1 {
+ background-image: url("moon2.bb5a5e35.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-2 {
+ background-image: url("moon3.3004b616.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-3 {
+ background-image: url("moon4.3d8cf016.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-4 {
+ background-image: url("moon5.36565dfe.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-5 {
+ background-image: url("moon6.a839ed96.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-6 {
+ background-image: url("moon7.27daf613.svg");
+}
+
+div#calendar div#calendar-body div div div.moon-phase-7 {
+ background-image: url("moon8.1692336e.svg");
+}
+
+div#calendar div#calendar-body div div div[class^="moon-phase-"] {
+ width: 100%;
+ height: 100%;
+ z-index: 1;
+ background-color: #fff;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 80% 80%;
+ display: none;
+ position: absolute;
+ top: 0;
+ left: 0%;
+ right: 0%;
+}
+
+div#calendar div#calendar-body div div div.active {
+ display: block;
+}
+
+div#calendar div#calendar-body div div.today div.active {
+ filter: sepia();
+ display: block;
+}
+
+span.weeknumber {
+ color: silver;
+ padding: 2px;
+ font-size: .7rem;
+ position: absolute;
+ right: 0;
+}
+
+div#add-edit-event {
+ z-index: 2;
+ height: 92vh;
+ position: absolute;
+ top: 0;
+ overflow: hidden;
+}
+
+div#add-edit-event .item {
+ margin: 0;
+}
+
+div#add-edit-event .item input {
+ margin: 0 5vw;
+}
+
+div#add-edit-event button.item {
+ margin: 0 5vw 10px;
+}
+
+div#form-image-wrapper {
+ margin: 0 0 10px;
+}
+
+#event-notification-time-wrapper {
+ padding: 0 0 20px;
+ position: relative;
+ margin: 20px 0 30px !important;
+}
+
+#form-image-wrapper {
+ background: none;
+}
+
+div#form-image-wrapper {
+ width: 100%;
+ padding: 5px;
+}
+
+div#form-image-wrapper img#form-image {
+ min-width: 100%;
+}
+
+div#event-recur-wrapper {
+ margin: 0 0 20px !important;
+}
+
+div#events-wrapper {
+ z-index: 4;
+ height: 92vh;
+ width: 100vw;
+ padding: 5px;
+ position: absolute;
+ top: 0;
+ overflow: hidden;
+}
+
+div#events-wrapper article {
+ min-width: 100%;
+ margin: 0 0 15px;
+}
+
+div.icons-bar {
+ margin: 5px 0 0;
+}
+
+div.icons-bar img {
+ max-width: 15px;
+ height: auto;
+}
+
+div#event-slider {
+ min-height: 40px;
+ margin: 15px 0 0;
+ position: relative;
+}
+
+div#event-slider div.date {
+ opacity: 0;
+ height: 0;
+}
+
+div#event-slider div.icons-bar {
+ width: 50px;
+ margin: 5px 0;
+ position: absolute;
+ left: 90%;
+}
+
+div#event-slider article[data-alarm="none"] div.icons-bar img.bell {
+ display: none;
+}
+
+div#event-slider div.icons-bar img {
+ width: 15px;
+ height: auto;
+}
+
+div#event-slider-indicator div div {
+ height: 10px;
+ width: 10px;
+ background: #797070;
+ border-radius: 50%;
+ margin: 0 5px 0 0;
+}
+
+div#event-slider-indicator div div.active {
+ height: 10px;
+ width: 10px;
+ background: #000;
+ border-radius: 50%;
+ margin: 0 5px 0 0;
+}
+
+div#event-slider-indicator {
+ max-width: 90vw;
+ min-width: 90vw;
+ margin: 3px 0 0;
+}
+
+div#event-slider article h2 {
+ background: var(--color-five);
+}
+
+div#event-slider article {
+ max-width: 80vw;
+ min-width: 80vw;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ margin: 0 0 15px;
+ font-size: .9rem;
+ display: none;
+ position: absolute;
+ top: 0;
+}
+
+div#event-slider article > * {
+ text-align: center;
+}
+
+div#event-slider article:nth-child(1) {
+ margin: 0 0 15px;
+ font-size: .9rem;
+ display: block;
+ position: absolute;
+ top: 0;
+}
+
+div#event-slider article h2 {
+ background: var(--color-five);
+}
+
+div#options {
+ z-index: 4;
+ height: 92vh;
+ padding: 0 5px 5px 0;
+ position: absolute;
+ top: 0;
+ overflow: hidden;
+}
+
+div#options div#import-text {
+ text-align: center;
+ margin: 0 0 20px;
+ padding: 10px;
+ font-weight: bold;
+}
+
+div#options div#subscription-text {
+ text-align: center;
+ margin: 0 0 10px;
+ padding: 10px;
+ font-weight: bold;
+}
+
+ul#keys li span {
+ min-width: 60px;
+ width: 60px;
+ font-weight: bold;
+ display: inline-block;
+}
+
+div#options ul#keys li {
+ margin: 0;
+ padding: 5px 0 0 10px;
+}
+
+div#options ul#keys:focus {
+ background: #fff;
+}
+
+div#options ul#keys {
+ margin: 0 0 20px;
+}
+
+ul#keys li:first-child {
+ min-width: 100vw;
+ width: 100%;
+}
+
+div#options h2 {
+ min-width: 100vw;
+ width: 100vw;
+ background: #e6e6e6;
+ margin: 0 0 10px;
+ padding: 10px;
+ font-weight: bold;
+}
+
+div#options li span.keys-day-event {
+ min-width: 20px;
+ width: 20px;
+ background: pink;
+ margin: 0 40px 0 0;
+ padding: 5px;
+}
+
+div#options li span.keys-current-day {
+ min-width: 20px;
+ width: 20px;
+ background: #78b7ff 0 0 / 10%;
+ margin: 0 40px 0 0;
+ padding: 5px;
+}
+
+div#subscription-form {
+ z-index: 4;
+ height: 92vh;
+ padding: 10px 0 0;
+ position: absolute;
+ top: 0;
+ overflow: hidden;
+}
+
+div#bottom-bar {
+ z-index: 2000;
+ height: 18px;
+ z-index: 6;
+ min-width: 100vw;
+ background: #000;
+ position: fixed;
+ bottom: 10px;
+ left: 0;
+}
+
+div#bottom-bar div#inner {
+ position: relative;
+}
+
+div#bottom-bar div {
+ color: #fff;
+ text-align: center;
+ background: #000;
+ padding: 2px;
+ font-size: .8rem;
+}
+
+div#bottom-bar div#button-center {
+ color: #fff;
+ width: 32%;
+ text-align: center;
+ background: #000;
+ padding: 2px;
+}
+
+div#bottom-bar div#button-left {
+ color: #fff;
+ width: 32%;
+ text-align: left;
+ width: 32%;
+ background: #000;
+ padding: 2px;
+}
+
+div#bottom-bar div#button-right {
+ color: #fff;
+ width: 32%;
+ text-align: right;
+ background: #000;
+ padding: 2px;
+}
+
+div#top-bar {
+ height: 18px;
+ z-index: 4;
+ min-width: 100vw;
+ background: #000;
+ display: none;
+ position: fixed;
+ top: 0;
+ left: 0;
+}
+
+div#top-bar img {
+ max-height: 15px;
+ color: #fff;
+ margin: 3px 0 0 5px;
+}
+
+div#top-bar div#inner {
+ position: relative;
+}
+
+div#top-bar div {
+ color: #fff;
+ background: #000;
+ padding: 2px;
+}
+
+div#top-bar div#button-center {
+ color: #fff;
+ width: 30%;
+ text-align: center;
+ background: #000;
+ padding: 2px;
+}
+
+div#top-bar div#button-left {
+ color: #fff;
+ width: 20px;
+ text-align: left;
+ width: 30%;
+ background: #000;
+ padding: 2px;
+}
+
+div#top-bar div#button-right {
+ color: #fff;
+ width: 30%;
+ text-align: right;
+ background: #000;
+ padding: 2px;
+}
+
+div#top {
+ position: fixed;
+ top: 0;
+}
+
+div#settings {
+ height: 92vh;
+ width: 100%;
+ z-index: 3;
+ background: #e7e7e7;
+ padding: 0 0 50px;
+ display: none;
+ position: absolute;
+ top: 0;
+ overflow: hidden;
+}
+
+div#settings div#text {
+ margin: 0 0 20px;
+}
+
+div#settings h2 {
+ padding: 0 10px;
+}
+
+div#settings label {
+ min-width: 80%;
+ height: 30px;
+ margin: 5px 5px 0 0;
+}
+
+@keyframes jump {
+ 0% {
+ transform: translateY(0);
+ }
+
+ 100% {
+ transform: translateY(-30px);
+ }
+}
+
diff --git a/dist/index.1a4add1b.js b/dist/index.2c50ba1b.js
similarity index 81%
rename from dist/index.1a4add1b.js
rename to dist/index.2c50ba1b.js
index e4cfede3..49c75ac3 100644
--- a/dist/index.1a4add1b.js
+++ b/dist/index.2c50ba1b.js
@@ -7862,6 +7862,4173 @@ module.exports = $62703f92cb87bf83$var$pipeline;
});
+parcelRequire.register("1MBIo", function(module, exports) {
+
+var $aS0o5 = parcelRequire("aS0o5");
+
+//! moment-timezone.js
+//! version : 0.5.34
+//! Copyright (c) JS Foundation and other contributors
+//! license : MIT
+//! github.com/moment/moment-timezone
+(function(root, factory) {
+ "use strict";
+ /*global define*/ if (module.exports) module.exports = factory((parcelRequire("71fSz"))); // Node
+ else if (typeof define === "function" && define.amd) define([
+ "moment"
+ ], factory); // AMD
+ else factory(root.moment); // Browser
+})(undefined, function(moment) {
+ "use strict";
+ var charCodeToInt = /************************************
+ Unpacking
+ ************************************/ function charCodeToInt(charCode) {
+ if (charCode > 96) return charCode - 87;
+ else if (charCode > 64) return charCode - 29;
+ return charCode - 48;
+ };
+ var unpackBase60 = function unpackBase60(string) {
+ var i = 0, parts = string.split("."), whole = parts[0], fractional = parts[1] || "", multiplier = 1, num, out = 0, sign = 1;
+ // handle negative numbers
+ if (string.charCodeAt(0) === 45) {
+ i = 1;
+ sign = -1;
+ }
+ // handle digits before the decimal
+ for(i; i < whole.length; i++){
+ num = charCodeToInt(whole.charCodeAt(i));
+ out = 60 * out + num;
+ }
+ // handle digits after the decimal
+ for(i = 0; i < fractional.length; i++){
+ multiplier = multiplier / 60;
+ num = charCodeToInt(fractional.charCodeAt(i));
+ out += num * multiplier;
+ }
+ return out * sign;
+ };
+ var arrayToInt = function arrayToInt(array) {
+ for(var i = 0; i < array.length; i++)array[i] = unpackBase60(array[i]);
+ };
+ var intToUntil = function intToUntil(array, length) {
+ for(var i = 0; i < length; i++)array[i] = Math.round((array[i - 1] || 0) + array[i] * 60000); // minutes to milliseconds
+ array[length - 1] = Infinity;
+ };
+ var mapIndices = function mapIndices(source, indices) {
+ var out = [], i;
+ for(i = 0; i < indices.length; i++)out[i] = source[indices[i]];
+ return out;
+ };
+ var unpack = function unpack(string) {
+ var data = string.split("|"), offsets = data[2].split(" "), indices = data[3].split(""), untils = data[4].split(" ");
+ arrayToInt(offsets);
+ arrayToInt(indices);
+ arrayToInt(untils);
+ intToUntil(untils, indices.length);
+ return {
+ name: data[0],
+ abbrs: mapIndices(data[1].split(" "), indices),
+ offsets: mapIndices(offsets, indices),
+ untils: untils,
+ population: data[5] | 0
+ };
+ };
+ var Zone = /************************************
+ Zone object
+ ************************************/ function Zone(packedString) {
+ if (packedString) this._set(unpack(packedString));
+ };
+ var Country = /************************************
+ Country object
+ ************************************/ function Country(country_name, zone_names) {
+ this.name = country_name;
+ this.zones = zone_names;
+ };
+ var OffsetAt = /************************************
+ Current Timezone
+ ************************************/ function OffsetAt(at) {
+ var timeString = at.toTimeString();
+ var abbr = timeString.match(/\([a-z ]+\)/i);
+ if (abbr && abbr[0]) {
+ // 17:56:31 GMT-0600 (CST)
+ // 17:56:31 GMT-0600 (Central Standard Time)
+ abbr = abbr[0].match(/[A-Z]/g);
+ abbr = abbr ? abbr.join("") : undefined;
+ } else {
+ // 17:56:31 CST
+ // 17:56:31 GMT+0800 (台北標準時間)
+ abbr = timeString.match(/[A-Z]{3,5}/g);
+ abbr = abbr ? abbr[0] : undefined;
+ }
+ if (abbr === "GMT") abbr = undefined;
+ this.at = +at;
+ this.abbr = abbr;
+ this.offset = at.getTimezoneOffset();
+ };
+ var ZoneScore = function ZoneScore(zone) {
+ this.zone = zone;
+ this.offsetScore = 0;
+ this.abbrScore = 0;
+ };
+ var findChange = function findChange(low, high) {
+ var mid, diff;
+ while(diff = ((high.at - low.at) / 12e4 | 0) * 6e4){
+ mid = new OffsetAt(new Date(low.at + diff));
+ if (mid.offset === low.offset) low = mid;
+ else high = mid;
+ }
+ return low;
+ };
+ var userOffsets = function userOffsets() {
+ var startYear = new Date().getFullYear() - 2, last = new OffsetAt(new Date(startYear, 0, 1)), offsets = [
+ last
+ ], change, next, i;
+ for(i = 1; i < 48; i++){
+ next = new OffsetAt(new Date(startYear, i, 1));
+ if (next.offset !== last.offset) {
+ change = findChange(last, next);
+ offsets.push(change);
+ offsets.push(new OffsetAt(new Date(change.at + 6e4)));
+ }
+ last = next;
+ }
+ for(i = 0; i < 4; i++){
+ offsets.push(new OffsetAt(new Date(startYear + i, 0, 1)));
+ offsets.push(new OffsetAt(new Date(startYear + i, 6, 1)));
+ }
+ return offsets;
+ };
+ var sortZoneScores = function sortZoneScores(a, b) {
+ if (a.offsetScore !== b.offsetScore) return a.offsetScore - b.offsetScore;
+ if (a.abbrScore !== b.abbrScore) return a.abbrScore - b.abbrScore;
+ if (a.zone.population !== b.zone.population) return b.zone.population - a.zone.population;
+ return b.zone.name.localeCompare(a.zone.name);
+ };
+ var addToGuesses = function addToGuesses(name, offsets) {
+ var i, offset;
+ arrayToInt(offsets);
+ for(i = 0; i < offsets.length; i++){
+ offset = offsets[i];
+ guesses1[offset] = guesses1[offset] || {};
+ guesses1[offset][name] = true;
+ }
+ };
+ var guessesForUserOffsets = function guessesForUserOffsets(offsets) {
+ var offsetsLength = offsets.length, filteredGuesses = {}, out = [], i, j, guessesOffset;
+ for(i = 0; i < offsetsLength; i++){
+ guessesOffset = guesses1[offsets[i].offset] || {};
+ for(j in guessesOffset)if (guessesOffset.hasOwnProperty(j)) filteredGuesses[j] = true;
+ }
+ for(i in filteredGuesses)if (filteredGuesses.hasOwnProperty(i)) out.push(names[i]);
+ return out;
+ };
+ var rebuildGuess = function rebuildGuess() {
+ // use Intl API when available and returning valid time zone
+ try {
+ var intlName = Intl.DateTimeFormat().resolvedOptions().timeZone;
+ if (intlName && intlName.length > 3) {
+ var name = names[normalizeName(intlName)];
+ if (name) return name;
+ logError("Moment Timezone found " + intlName + " from the Intl api, but did not have that data loaded.");
+ }
+ } catch (e) {
+ // Intl unavailable, fall back to manual guessing.
+ }
+ var offsets = userOffsets(), offsetsLength = offsets.length, guesses = guessesForUserOffsets(offsets), zoneScores = [], zoneScore, i, j;
+ for(i = 0; i < guesses.length; i++){
+ zoneScore = new ZoneScore(getZone(guesses[i]), offsetsLength);
+ for(j = 0; j < offsetsLength; j++)zoneScore.scoreOffsetAt(offsets[j]);
+ zoneScores.push(zoneScore);
+ }
+ zoneScores.sort(sortZoneScores);
+ return zoneScores.length > 0 ? zoneScores[0].zone.name : undefined;
+ };
+ var guess = function guess(ignoreCache) {
+ if (!cachedGuess || ignoreCache) cachedGuess = rebuildGuess();
+ return cachedGuess;
+ };
+ var normalizeName = /************************************
+ Global Methods
+ ************************************/ function normalizeName(name) {
+ return (name || "").toLowerCase().replace(/\//g, "_");
+ };
+ var addZone = function addZone(packed) {
+ var i, name, split, normalized;
+ if (typeof packed === "string") packed = [
+ packed
+ ];
+ for(i = 0; i < packed.length; i++){
+ split = packed[i].split("|");
+ name = split[0];
+ normalized = normalizeName(name);
+ zones1[normalized] = packed[i];
+ names[normalized] = name;
+ addToGuesses(normalized, split[2].split(" "));
+ }
+ };
+ var getNames = function getNames() {
+ var i, out = [];
+ for(i in names)if (names.hasOwnProperty(i) && (zones1[i] || zones1[links[i]]) && names[i]) out.push(names[i]);
+ return out.sort();
+ };
+ var getCountryNames = function getCountryNames() {
+ return Object.keys(countries);
+ };
+ var addLink = function addLink(aliases) {
+ var i, alias, normal0, normal1;
+ if (typeof aliases === "string") aliases = [
+ aliases
+ ];
+ for(i = 0; i < aliases.length; i++){
+ alias = aliases[i].split("|");
+ normal0 = normalizeName(alias[0]);
+ normal1 = normalizeName(alias[1]);
+ links[normal0] = normal1;
+ names[normal0] = alias[0];
+ links[normal1] = normal0;
+ names[normal1] = alias[1];
+ }
+ };
+ var addCountries = function addCountries(data) {
+ var i, country_code, country_zones, split;
+ if (!data || !data.length) return;
+ for(i = 0; i < data.length; i++){
+ split = data[i].split("|");
+ country_code = split[0].toUpperCase();
+ country_zones = split[1].split(" ");
+ countries[country_code] = new Country(country_code, country_zones);
+ }
+ };
+ var getCountry = function getCountry(name) {
+ name = name.toUpperCase();
+ return countries[name] || null;
+ };
+ var zonesForCountry = function zonesForCountry(country, with_offset) {
+ country = getCountry(country);
+ if (!country) return null;
+ var zones = country.zones.sort();
+ if (with_offset) return zones.map(function(zone_name) {
+ var zone = getZone(zone_name);
+ return {
+ name: zone_name,
+ offset: zone.utcOffset(new Date())
+ };
+ });
+ return zones;
+ };
+ var loadData = function loadData(data) {
+ addZone(data.zones);
+ addLink(data.links);
+ addCountries(data.countries);
+ tz.dataVersion = data.version;
+ };
+ var needsOffset = function needsOffset(m) {
+ var isUnixTimestamp = m._f === "X" || m._f === "x";
+ return !!(m._a && m._tzm === undefined && !isUnixTimestamp);
+ };
+ var logError = function logError(message) {
+ if (typeof console !== "undefined" && typeof console.error === "function") console.error(message);
+ };
+ var tz = /************************************
+ moment.tz namespace
+ ************************************/ function tz(input) {
+ var args = Array.prototype.slice.call(arguments, 0, -1), name = arguments[arguments.length - 1], zone = getZone(name), out = moment.utc.apply(null, args);
+ if (zone && !moment.isMoment(input) && needsOffset(out)) out.add(zone.parse(out), "minutes");
+ out.tz(name);
+ return out;
+ };
+ var abbrWrap = function abbrWrap(old) {
+ return function() {
+ if (this._z) return this._z.abbr(this);
+ return old.call(this);
+ };
+ };
+ var resetZoneWrap = function resetZoneWrap(old) {
+ return function() {
+ this._z = null;
+ return old.apply(this, arguments);
+ };
+ };
+ var resetZoneWrap2 = function resetZoneWrap2(old) {
+ return function() {
+ if (arguments.length > 0) this._z = null;
+ return old.apply(this, arguments);
+ };
+ };
+ // Resolves es6 module loading issue
+ if (moment.version === undefined && moment.default) moment = moment.default;
+ // Do not load moment-timezone a second time.
+ // if (moment.tz !== undefined) {
+ // logError('Moment Timezone ' + moment.tz.version + ' was already loaded ' + (moment.tz.dataVersion ? 'with data from ' : 'without any data') + moment.tz.dataVersion);
+ // return moment;
+ // }
+ var VERSION = "0.5.34", zones1 = {}, links = {}, countries = {}, names = {}, guesses1 = {}, cachedGuess;
+ if (!moment || typeof moment.version !== "string") logError("Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/");
+ var momentVersion = moment.version.split("."), major = +momentVersion[0], minor = +momentVersion[1];
+ // Moment.js version check
+ if (major < 2 || major === 2 && minor < 6) logError("Moment Timezone requires Moment.js >= 2.6.0. You are using Moment.js " + moment.version + ". See momentjs.com");
+ Zone.prototype = {
+ _set: function _set(unpacked) {
+ this.name = unpacked.name;
+ this.abbrs = unpacked.abbrs;
+ this.untils = unpacked.untils;
+ this.offsets = unpacked.offsets;
+ this.population = unpacked.population;
+ },
+ _index: function _index(timestamp) {
+ var target = +timestamp, untils = this.untils, i;
+ for(i = 0; i < untils.length; i++){
+ if (target < untils[i]) return i;
+ }
+ },
+ countries: function countries1() {
+ var zone_name = this.name;
+ return Object.keys(countries).filter(function(country_code) {
+ return countries[country_code].zones.indexOf(zone_name) !== -1;
+ });
+ },
+ parse: function parse(timestamp) {
+ var target = +timestamp, offsets = this.offsets, untils = this.untils, max = untils.length - 1, offset, offsetNext, offsetPrev, i;
+ for(i = 0; i < max; i++){
+ offset = offsets[i];
+ offsetNext = offsets[i + 1];
+ offsetPrev = offsets[i ? i - 1 : i];
+ if (offset < offsetNext && tz.moveAmbiguousForward) offset = offsetNext;
+ else if (offset > offsetPrev && tz.moveInvalidForward) offset = offsetPrev;
+ if (target < untils[i] - offset * 60000) return offsets[i];
+ }
+ return offsets[max];
+ },
+ abbr: function abbr(mom) {
+ return this.abbrs[this._index(mom)];
+ },
+ offset: function offset(mom) {
+ logError("zone.offset has been deprecated in favor of zone.utcOffset");
+ return this.offsets[this._index(mom)];
+ },
+ utcOffset: function utcOffset(mom) {
+ return this.offsets[this._index(mom)];
+ }
+ };
+ ZoneScore.prototype.scoreOffsetAt = function(offsetAt) {
+ this.offsetScore += Math.abs(this.zone.utcOffset(offsetAt.at) - offsetAt.offset);
+ if (this.zone.abbr(offsetAt.at).replace(/[^A-Z]/g, "") !== offsetAt.abbr) this.abbrScore++;
+ };
+ function getZone(name, caller) {
+ name = normalizeName(name);
+ var zone = zones1[name];
+ var link;
+ if (zone instanceof Zone) return zone;
+ if (typeof zone === "string") {
+ zone = new Zone(zone);
+ zones1[name] = zone;
+ return zone;
+ }
+ // Pass getZone to prevent recursion more than 1 level deep
+ if (links[name] && caller !== getZone && (link = getZone(links[name], getZone))) {
+ zone = zones1[name] = new Zone();
+ zone._set(link);
+ zone.name = names[name];
+ return zone;
+ }
+ return null;
+ }
+ function zoneExists(name) {
+ if (!zoneExists.didShowError) {
+ zoneExists.didShowError = true;
+ logError("moment.tz.zoneExists('" + name + "') has been deprecated in favor of !moment.tz.zone('" + name + "')");
+ }
+ return !!getZone(name);
+ }
+ tz.version = VERSION;
+ tz.dataVersion = "";
+ tz._zones = zones1;
+ tz._links = links;
+ tz._names = names;
+ tz._countries = countries;
+ tz.add = addZone;
+ tz.link = addLink;
+ tz.load = loadData;
+ tz.zone = getZone;
+ tz.zoneExists = zoneExists; // deprecated in 0.1.0
+ tz.guess = guess;
+ tz.names = getNames;
+ tz.Zone = Zone;
+ tz.unpack = unpack;
+ tz.unpackBase60 = unpackBase60;
+ tz.needsOffset = needsOffset;
+ tz.moveInvalidForward = true;
+ tz.moveAmbiguousForward = false;
+ tz.countries = getCountryNames;
+ tz.zonesForCountry = zonesForCountry;
+ /************************************
+ Interface with Moment.js
+ ************************************/ var fn = moment.fn;
+ moment.tz = tz;
+ moment.defaultZone = null;
+ moment.updateOffset = function(mom, keepTime) {
+ var zone = moment.defaultZone, offset;
+ if (mom._z === undefined) {
+ if (zone && needsOffset(mom) && !mom._isUTC) {
+ mom._d = moment.utc(mom._a)._d;
+ mom.utc().add(zone.parse(mom), "minutes");
+ }
+ mom._z = zone;
+ }
+ if (mom._z) {
+ offset = mom._z.utcOffset(mom);
+ if (Math.abs(offset) < 16) offset = offset / 60;
+ if (mom.utcOffset !== undefined) {
+ var z = mom._z;
+ mom.utcOffset(-offset, keepTime);
+ mom._z = z;
+ } else mom.zone(offset, keepTime);
+ }
+ };
+ fn.tz = function(name, keepTime) {
+ if (name) {
+ if (typeof name !== "string") throw new Error("Time zone name must be a string, got " + name + " [" + (typeof name === "undefined" ? "undefined" : (0, $aS0o5.default)(name)) + "]");
+ this._z = getZone(name);
+ if (this._z) moment.updateOffset(this, keepTime);
+ else logError("Moment Timezone has no data for " + name + ". See http://momentjs.com/timezone/docs/#/data-loading/.");
+ return this;
+ }
+ if (this._z) return this._z.name;
+ };
+ fn.zoneName = abbrWrap(fn.zoneName);
+ fn.zoneAbbr = abbrWrap(fn.zoneAbbr);
+ fn.utc = resetZoneWrap(fn.utc);
+ fn.local = resetZoneWrap(fn.local);
+ fn.utcOffset = resetZoneWrap2(fn.utcOffset);
+ moment.tz.setDefault = function(name) {
+ if (major < 2 || major === 2 && minor < 9) logError("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js " + moment.version + ".");
+ moment.defaultZone = name ? getZone(name) : null;
+ return moment;
+ };
+ // Cloning a moment should include the _z property.
+ var momentProperties = moment.momentProperties;
+ if (Object.prototype.toString.call(momentProperties) === "[object Array]") {
+ // moment 2.8.1+
+ momentProperties.push("_z");
+ momentProperties.push("_a");
+ } else if (momentProperties) // moment 2.7.0
+ momentProperties._z = null;
+ // INJECT DATA
+ return moment;
+});
+
+});
+parcelRequire.register("71fSz", function(module, exports) {
+
+var $aS0o5 = parcelRequire("aS0o5");
+(function(global, factory) {
+ module.exports = factory();
+})(undefined, function() {
+ "use strict";
+ var hooks = function hooks() {
+ return hookCallback.apply(null, arguments);
+ };
+ var setHookCallback = // This is done to register the method called with moment()
+ // without creating circular dependencies.
+ function setHookCallback(callback) {
+ hookCallback = callback;
+ };
+ var isArray = function isArray(input) {
+ return input instanceof Array || Object.prototype.toString.call(input) === "[object Array]";
+ };
+ var isObject = function isObject(input) {
+ // IE8 will treat undefined and null as object if it wasn't for
+ // input != null
+ return input != null && Object.prototype.toString.call(input) === "[object Object]";
+ };
+ var hasOwnProp = function hasOwnProp(a, b) {
+ return Object.prototype.hasOwnProperty.call(a, b);
+ };
+ var isObjectEmpty = function isObjectEmpty(obj) {
+ if (Object.getOwnPropertyNames) return Object.getOwnPropertyNames(obj).length === 0;
+ else {
+ var k;
+ for(k in obj){
+ if (hasOwnProp(obj, k)) return false;
+ }
+ return true;
+ }
+ };
+ var isUndefined = function isUndefined(input) {
+ return input === void 0;
+ };
+ var isNumber = function isNumber(input) {
+ return typeof input === "number" || Object.prototype.toString.call(input) === "[object Number]";
+ };
+ var isDate = function isDate(input) {
+ return input instanceof Date || Object.prototype.toString.call(input) === "[object Date]";
+ };
+ var map = function map(arr, fn) {
+ var res = [], i, arrLen = arr.length;
+ for(i = 0; i < arrLen; ++i)res.push(fn(arr[i], i));
+ return res;
+ };
+ var extend = function extend(a, b) {
+ for(var i in b)if (hasOwnProp(b, i)) a[i] = b[i];
+ if (hasOwnProp(b, "toString")) a.toString = b.toString;
+ if (hasOwnProp(b, "valueOf")) a.valueOf = b.valueOf;
+ return a;
+ };
+ var createUTC = function createUTC(input, format, locale, strict) {
+ return createLocalOrUTC(input, format, locale, strict, true).utc();
+ };
+ var defaultParsingFlags = function defaultParsingFlags() {
+ // We need to deep clone this object.
+ return {
+ empty: false,
+ unusedTokens: [],
+ unusedInput: [],
+ overflow: -2,
+ charsLeftOver: 0,
+ nullInput: false,
+ invalidEra: null,
+ invalidMonth: null,
+ invalidFormat: false,
+ userInvalidated: false,
+ iso: false,
+ parsedDateParts: [],
+ era: null,
+ meridiem: null,
+ rfc2822: false,
+ weekdayMismatch: false
+ };
+ };
+ var getParsingFlags = function getParsingFlags(m) {
+ if (m._pf == null) m._pf = defaultParsingFlags();
+ return m._pf;
+ };
+ var isValid = function isValid(m) {
+ if (m._isValid == null) {
+ var flags = getParsingFlags(m), parsedParts = some.call(flags.parsedDateParts, function(i) {
+ return i != null;
+ }), isNowValid = !isNaN(m._d.getTime()) && flags.overflow < 0 && !flags.empty && !flags.invalidEra && !flags.invalidMonth && !flags.invalidWeekday && !flags.weekdayMismatch && !flags.nullInput && !flags.invalidFormat && !flags.userInvalidated && (!flags.meridiem || flags.meridiem && parsedParts);
+ if (m._strict) isNowValid = isNowValid && flags.charsLeftOver === 0 && flags.unusedTokens.length === 0 && flags.bigHour === undefined;
+ if (Object.isFrozen == null || !Object.isFrozen(m)) m._isValid = isNowValid;
+ else return isNowValid;
+ }
+ return m._isValid;
+ };
+ var createInvalid = function createInvalid(flags) {
+ var m = createUTC(NaN);
+ if (flags != null) extend(getParsingFlags(m), flags);
+ else getParsingFlags(m).userInvalidated = true;
+ return m;
+ };
+ var copyConfig = function copyConfig(to, from) {
+ var i, prop, val, momentPropertiesLen = momentProperties.length;
+ if (!isUndefined(from._isAMomentObject)) to._isAMomentObject = from._isAMomentObject;
+ if (!isUndefined(from._i)) to._i = from._i;
+ if (!isUndefined(from._f)) to._f = from._f;
+ if (!isUndefined(from._l)) to._l = from._l;
+ if (!isUndefined(from._strict)) to._strict = from._strict;
+ if (!isUndefined(from._tzm)) to._tzm = from._tzm;
+ if (!isUndefined(from._isUTC)) to._isUTC = from._isUTC;
+ if (!isUndefined(from._offset)) to._offset = from._offset;
+ if (!isUndefined(from._pf)) to._pf = getParsingFlags(from);
+ if (!isUndefined(from._locale)) to._locale = from._locale;
+ if (momentPropertiesLen > 0) for(i = 0; i < momentPropertiesLen; i++){
+ prop = momentProperties[i];
+ val = from[prop];
+ if (!isUndefined(val)) to[prop] = val;
+ }
+ return to;
+ };
+ var Moment = // Moment prototype object
+ function Moment(config) {
+ copyConfig(this, config);
+ this._d = new Date(config._d != null ? config._d.getTime() : NaN);
+ if (!this.isValid()) this._d = new Date(NaN);
+ // Prevent infinite loop in case updateOffset creates new moment
+ // objects.
+ if (updateInProgress === false) {
+ updateInProgress = true;
+ hooks.updateOffset(this);
+ updateInProgress = false;
+ }
+ };
+ var isMoment = function isMoment(obj) {
+ return obj instanceof Moment || obj != null && obj._isAMomentObject != null;
+ };
+ var warn = function warn(msg) {
+ if (hooks.suppressDeprecationWarnings === false && typeof console !== "undefined" && console.warn) console.warn("Deprecation warning: " + msg);
+ };
+ var deprecate = function deprecate(msg, fn) {
+ var firstTime = true;
+ return extend(function() {
+ if (hooks.deprecationHandler != null) hooks.deprecationHandler(null, msg);
+ if (firstTime) {
+ var args = [], arg, i, key, argLen = arguments.length;
+ for(i = 0; i < argLen; i++){
+ arg = "";
+ if (typeof arguments[i] === "object") {
+ arg += "\n[" + i + "] ";
+ for(key in arguments[0])if (hasOwnProp(arguments[0], key)) arg += key + ": " + arguments[0][key] + ", ";
+ arg = arg.slice(0, -2); // Remove trailing comma and space
+ } else arg = arguments[i];
+ args.push(arg);
+ }
+ warn(msg + "\nArguments: " + Array.prototype.slice.call(args).join("") + "\n" + new Error().stack);
+ firstTime = false;
+ }
+ return fn.apply(this, arguments);
+ }, fn);
+ };
+ var deprecateSimple = function deprecateSimple(name, msg) {
+ if (hooks.deprecationHandler != null) hooks.deprecationHandler(name, msg);
+ if (!deprecations[name]) {
+ warn(msg);
+ deprecations[name] = true;
+ }
+ };
+ var isFunction = function isFunction(input) {
+ return typeof Function !== "undefined" && input instanceof Function || Object.prototype.toString.call(input) === "[object Function]";
+ };
+ var set = function set(config) {
+ var prop, i;
+ for(i in config)if (hasOwnProp(config, i)) {
+ prop = config[i];
+ if (isFunction(prop)) this[i] = prop;
+ else this["_" + i] = prop;
+ }
+ this._config = config;
+ // Lenient ordinal parsing accepts just a number in addition to
+ // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.
+ // TODO: Remove "ordinalParse" fallback in next major release.
+ this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source);
+ };
+ var mergeConfigs = function mergeConfigs(parentConfig, childConfig) {
+ var res = extend({}, parentConfig), prop;
+ for(prop in childConfig)if (hasOwnProp(childConfig, prop)) {
+ if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {
+ res[prop] = {};
+ extend(res[prop], parentConfig[prop]);
+ extend(res[prop], childConfig[prop]);
+ } else if (childConfig[prop] != null) res[prop] = childConfig[prop];
+ else delete res[prop];
+ }
+ for(prop in parentConfig)if (hasOwnProp(parentConfig, prop) && !hasOwnProp(childConfig, prop) && isObject(parentConfig[prop])) // make sure changes to properties don't modify parent config
+ res[prop] = extend({}, res[prop]);
+ return res;
+ };
+ var Locale = function Locale(config) {
+ if (config != null) this.set(config);
+ };
+ var calendar = function calendar(key, mom, now) {
+ var output = this._calendar[key] || this._calendar["sameElse"];
+ return isFunction(output) ? output.call(mom, now) : output;
+ };
+ var zeroFill = function zeroFill(number, targetLength, forceSign) {
+ var absNumber = "" + Math.abs(number), zerosToFill = targetLength - absNumber.length, sign = number >= 0;
+ return (sign ? forceSign ? "+" : "" : "-") + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber;
+ };
+ var addFormatToken = // token: 'M'
+ // padded: ['MM', 2]
+ // ordinal: 'Mo'
+ // callback: function () { this.month() + 1 }
+ function addFormatToken(token, padded, ordinal, callback) {
+ var func = callback;
+ if (typeof callback === "string") func = function func() {
+ return this[callback]();
+ };
+ if (token) formatTokenFunctions[token] = func;
+ if (padded) formatTokenFunctions[padded[0]] = function() {
+ return zeroFill(func.apply(this, arguments), padded[1], padded[2]);
+ };
+ if (ordinal) formatTokenFunctions[ordinal] = function() {
+ return this.localeData().ordinal(func.apply(this, arguments), token);
+ };
+ };
+ var removeFormattingTokens = function removeFormattingTokens(input) {
+ if (input.match(/\[[\s\S]/)) return input.replace(/^\[|\]$/g, "");
+ return input.replace(/\\/g, "");
+ };
+ var makeFormatFunction = function makeFormatFunction(format) {
+ var array = format.match(formattingTokens), i1, length;
+ for(i1 = 0, length = array.length; i1 < length; i1++)if (formatTokenFunctions[array[i1]]) array[i1] = formatTokenFunctions[array[i1]];
+ else array[i1] = removeFormattingTokens(array[i1]);
+ return function(mom) {
+ var output = "", i;
+ for(i = 0; i < length; i++)output += isFunction(array[i]) ? array[i].call(mom, format) : array[i];
+ return output;
+ };
+ };
+ var formatMoment = // format date using native date object
+ function formatMoment(m, format) {
+ if (!m.isValid()) return m.localeData().invalidDate();
+ format = expandFormat(format, m.localeData());
+ formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format);
+ return formatFunctions[format](m);
+ };
+ var expandFormat = function expandFormat(format, locale) {
+ var i = 5;
+ function replaceLongDateFormatTokens(input) {
+ return locale.longDateFormat(input) || input;
+ }
+ localFormattingTokens.lastIndex = 0;
+ while(i >= 0 && localFormattingTokens.test(format)){
+ format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);
+ localFormattingTokens.lastIndex = 0;
+ i -= 1;
+ }
+ return format;
+ };
+ var longDateFormat = function longDateFormat(key) {
+ var format = this._longDateFormat[key], formatUpper = this._longDateFormat[key.toUpperCase()];
+ if (format || !formatUpper) return format;
+ this._longDateFormat[key] = formatUpper.match(formattingTokens).map(function(tok) {
+ if (tok === "MMMM" || tok === "MM" || tok === "DD" || tok === "dddd") return tok.slice(1);
+ return tok;
+ }).join("");
+ return this._longDateFormat[key];
+ };
+ var invalidDate = function invalidDate() {
+ return this._invalidDate;
+ };
+ var ordinal1 = function ordinal1(number) {
+ return this._ordinal.replace("%d", number);
+ };
+ var relativeTime = function relativeTime(number, withoutSuffix, string, isFuture) {
+ var output = this._relativeTime[string];
+ return isFunction(output) ? output(number, withoutSuffix, string, isFuture) : output.replace(/%d/i, number);
+ };
+ var pastFuture = function pastFuture(diff, output) {
+ var format = this._relativeTime[diff > 0 ? "future" : "past"];
+ return isFunction(format) ? format(output) : format.replace(/%s/i, output);
+ };
+ var addUnitAlias = function addUnitAlias(unit, shorthand) {
+ var lowerCase = unit.toLowerCase();
+ aliases[lowerCase] = aliases[lowerCase + "s"] = aliases[shorthand] = unit;
+ };
+ var normalizeUnits = function normalizeUnits(units) {
+ return typeof units === "string" ? aliases[units] || aliases[units.toLowerCase()] : undefined;
+ };
+ var normalizeObjectUnits = function normalizeObjectUnits(inputObject) {
+ var normalizedInput = {}, normalizedProp, prop;
+ for(prop in inputObject)if (hasOwnProp(inputObject, prop)) {
+ normalizedProp = normalizeUnits(prop);
+ if (normalizedProp) normalizedInput[normalizedProp] = inputObject[prop];
+ }
+ return normalizedInput;
+ };
+ var addUnitPriority = function addUnitPriority(unit, priority) {
+ priorities[unit] = priority;
+ };
+ var getPrioritizedUnits = function getPrioritizedUnits(unitsObj) {
+ var units = [], u;
+ for(u in unitsObj)if (hasOwnProp(unitsObj, u)) units.push({
+ unit: u,
+ priority: priorities[u]
+ });
+ units.sort(function(a, b) {
+ return a.priority - b.priority;
+ });
+ return units;
+ };
+ var isLeapYear = function isLeapYear(year) {
+ return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
+ };
+ var absFloor = function absFloor(number) {
+ if (number < 0) // -0 -> 0
+ return Math.ceil(number) || 0;
+ else return Math.floor(number);
+ };
+ var toInt = function toInt(argumentForCoercion) {
+ var coercedNumber = +argumentForCoercion, value = 0;
+ if (coercedNumber !== 0 && isFinite(coercedNumber)) value = absFloor(coercedNumber);
+ return value;
+ };
+ var makeGetSet = function makeGetSet(unit, keepTime) {
+ return function(value) {
+ if (value != null) {
+ set$1(this, unit, value);
+ hooks.updateOffset(this, keepTime);
+ return this;
+ } else return get(this, unit);
+ };
+ };
+ var get = function get(mom, unit) {
+ return mom.isValid() ? mom._d["get" + (mom._isUTC ? "UTC" : "") + unit]() : NaN;
+ };
+ var set$1 = function set$1(mom, unit, value) {
+ if (mom.isValid() && !isNaN(value)) {
+ if (unit === "FullYear" && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) {
+ value = toInt(value);
+ mom._d["set" + (mom._isUTC ? "UTC" : "") + unit](value, mom.month(), daysInMonth(value, mom.month()));
+ } else mom._d["set" + (mom._isUTC ? "UTC" : "") + unit](value);
+ }
+ };
+ var stringGet = // MOMENTS
+ function stringGet(units) {
+ units = normalizeUnits(units);
+ if (isFunction(this[units])) return this[units]();
+ return this;
+ };
+ var stringSet = function stringSet(units, value) {
+ if (typeof units === "object") {
+ units = normalizeObjectUnits(units);
+ var prioritized = getPrioritizedUnits(units), i, prioritizedLen = prioritized.length;
+ for(i = 0; i < prioritizedLen; i++)this[prioritized[i].unit](units[prioritized[i].unit]);
+ } else {
+ units = normalizeUnits(units);
+ if (isFunction(this[units])) return this[units](value);
+ }
+ return this;
+ };
+ var addRegexToken = function addRegexToken(token, regex, strictRegex) {
+ regexes[token] = isFunction(regex) ? regex : function(isStrict, localeData) {
+ return isStrict && strictRegex ? strictRegex : regex;
+ };
+ };
+ var getParseRegexForToken = function getParseRegexForToken(token, config) {
+ if (!hasOwnProp(regexes, token)) return new RegExp(unescapeFormat(token));
+ return regexes[token](config._strict, config._locale);
+ };
+ var unescapeFormat = // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
+ function unescapeFormat(s) {
+ return regexEscape(s.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(matched, p1, p2, p3, p4) {
+ return p1 || p2 || p3 || p4;
+ }));
+ };
+ var regexEscape = function regexEscape(s) {
+ return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&");
+ };
+ var addParseToken = function addParseToken(token, callback) {
+ var i, func = callback, tokenLen;
+ if (typeof token === "string") token = [
+ token
+ ];
+ if (isNumber(callback)) func = function func(input, array) {
+ array[callback] = toInt(input);
+ };
+ tokenLen = token.length;
+ for(i = 0; i < tokenLen; i++)tokens1[token[i]] = func;
+ };
+ var addWeekParseToken = function addWeekParseToken(token2, callback) {
+ addParseToken(token2, function(input, array, config, token) {
+ config._w = config._w || {};
+ callback(input, config._w, config, token);
+ });
+ };
+ var addTimeToArrayFromToken = function addTimeToArrayFromToken(token, input, config) {
+ if (input != null && hasOwnProp(tokens1, token)) tokens1[token](input, config._a, config, token);
+ };
+ var mod = function mod(n, x) {
+ return (n % x + x) % x;
+ };
+ var daysInMonth = function daysInMonth(year, month) {
+ if (isNaN(year) || isNaN(month)) return NaN;
+ var modMonth = mod(month, 12);
+ year += (month - modMonth) / 12;
+ return modMonth === 1 ? isLeapYear(year) ? 29 : 28 : 31 - modMonth % 7 % 2;
+ };
+ var localeMonths = function localeMonths(m, format) {
+ if (!m) return isArray(this._months) ? this._months : this._months["standalone"];
+ return isArray(this._months) ? this._months[m.month()] : this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? "format" : "standalone"][m.month()];
+ };
+ var localeMonthsShort = function localeMonthsShort(m, format) {
+ if (!m) return isArray(this._monthsShort) ? this._monthsShort : this._monthsShort["standalone"];
+ return isArray(this._monthsShort) ? this._monthsShort[m.month()] : this._monthsShort[MONTHS_IN_FORMAT.test(format) ? "format" : "standalone"][m.month()];
+ };
+ var handleStrictParse = function handleStrictParse(monthName, format, strict) {
+ var i, ii, mom, llc = monthName.toLocaleLowerCase();
+ if (!this._monthsParse) {
+ // this is not used
+ this._monthsParse = [];
+ this._longMonthsParse = [];
+ this._shortMonthsParse = [];
+ for(i = 0; i < 12; ++i){
+ mom = createUTC([
+ 2000,
+ i
+ ]);
+ this._shortMonthsParse[i] = this.monthsShort(mom, "").toLocaleLowerCase();
+ this._longMonthsParse[i] = this.months(mom, "").toLocaleLowerCase();
+ }
+ }
+ if (strict) {
+ if (format === "MMM") {
+ ii = indexOf.call(this._shortMonthsParse, llc);
+ return ii !== -1 ? ii : null;
+ } else {
+ ii = indexOf.call(this._longMonthsParse, llc);
+ return ii !== -1 ? ii : null;
+ }
+ } else if (format === "MMM") {
+ ii = indexOf.call(this._shortMonthsParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._longMonthsParse, llc);
+ return ii !== -1 ? ii : null;
+ } else {
+ ii = indexOf.call(this._longMonthsParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._shortMonthsParse, llc);
+ return ii !== -1 ? ii : null;
+ }
+ };
+ var localeMonthsParse = function localeMonthsParse(monthName, format, strict) {
+ var i, mom, regex;
+ if (this._monthsParseExact) return handleStrictParse.call(this, monthName, format, strict);
+ if (!this._monthsParse) {
+ this._monthsParse = [];
+ this._longMonthsParse = [];
+ this._shortMonthsParse = [];
+ }
+ // TODO: add sorting
+ // Sorting makes sure if one month (or abbr) is a prefix of another
+ // see sorting in computeMonthsParse
+ for(i = 0; i < 12; i++){
+ // make the regex if we don't have it already
+ mom = createUTC([
+ 2000,
+ i
+ ]);
+ if (strict && !this._longMonthsParse[i]) {
+ this._longMonthsParse[i] = new RegExp("^" + this.months(mom, "").replace(".", "") + "$", "i");
+ this._shortMonthsParse[i] = new RegExp("^" + this.monthsShort(mom, "").replace(".", "") + "$", "i");
+ }
+ if (!strict && !this._monthsParse[i]) {
+ regex = "^" + this.months(mom, "") + "|^" + this.monthsShort(mom, "");
+ this._monthsParse[i] = new RegExp(regex.replace(".", ""), "i");
+ }
+ // test the regex
+ if (strict && format === "MMMM" && this._longMonthsParse[i].test(monthName)) return i;
+ else if (strict && format === "MMM" && this._shortMonthsParse[i].test(monthName)) return i;
+ else if (!strict && this._monthsParse[i].test(monthName)) return i;
+ }
+ };
+ var setMonth = // MOMENTS
+ function setMonth(mom, value) {
+ var dayOfMonth;
+ if (!mom.isValid()) // No op
+ return mom;
+ if (typeof value === "string") {
+ if (/^\d+$/.test(value)) value = toInt(value);
+ else {
+ value = mom.localeData().monthsParse(value);
+ // TODO: Another silent failure?
+ if (!isNumber(value)) return mom;
+ }
+ }
+ dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));
+ mom._d["set" + (mom._isUTC ? "UTC" : "") + "Month"](value, dayOfMonth);
+ return mom;
+ };
+ var getSetMonth = function getSetMonth(value) {
+ if (value != null) {
+ setMonth(this, value);
+ hooks.updateOffset(this, true);
+ return this;
+ } else return get(this, "Month");
+ };
+ var getDaysInMonth = function getDaysInMonth() {
+ return daysInMonth(this.year(), this.month());
+ };
+ var monthsShortRegex = function monthsShortRegex(isStrict) {
+ if (this._monthsParseExact) {
+ if (!hasOwnProp(this, "_monthsRegex")) computeMonthsParse.call(this);
+ if (isStrict) return this._monthsShortStrictRegex;
+ else return this._monthsShortRegex;
+ } else {
+ if (!hasOwnProp(this, "_monthsShortRegex")) this._monthsShortRegex = defaultMonthsShortRegex;
+ return this._monthsShortStrictRegex && isStrict ? this._monthsShortStrictRegex : this._monthsShortRegex;
+ }
+ };
+ var monthsRegex = function monthsRegex(isStrict) {
+ if (this._monthsParseExact) {
+ if (!hasOwnProp(this, "_monthsRegex")) computeMonthsParse.call(this);
+ if (isStrict) return this._monthsStrictRegex;
+ else return this._monthsRegex;
+ } else {
+ if (!hasOwnProp(this, "_monthsRegex")) this._monthsRegex = defaultMonthsRegex;
+ return this._monthsStrictRegex && isStrict ? this._monthsStrictRegex : this._monthsRegex;
+ }
+ };
+ var computeMonthsParse = function computeMonthsParse() {
+ function cmpLenRev(a, b) {
+ return b.length - a.length;
+ }
+ var shortPieces = [], longPieces = [], mixedPieces = [], i, mom;
+ for(i = 0; i < 12; i++){
+ // make the regex if we don't have it already
+ mom = createUTC([
+ 2000,
+ i
+ ]);
+ shortPieces.push(this.monthsShort(mom, ""));
+ longPieces.push(this.months(mom, ""));
+ mixedPieces.push(this.months(mom, ""));
+ mixedPieces.push(this.monthsShort(mom, ""));
+ }
+ // Sorting makes sure if one month (or abbr) is a prefix of another it
+ // will match the longer piece.
+ shortPieces.sort(cmpLenRev);
+ longPieces.sort(cmpLenRev);
+ mixedPieces.sort(cmpLenRev);
+ for(i = 0; i < 12; i++){
+ shortPieces[i] = regexEscape(shortPieces[i]);
+ longPieces[i] = regexEscape(longPieces[i]);
+ }
+ for(i = 0; i < 24; i++)mixedPieces[i] = regexEscape(mixedPieces[i]);
+ this._monthsRegex = new RegExp("^(" + mixedPieces.join("|") + ")", "i");
+ this._monthsShortRegex = this._monthsRegex;
+ this._monthsStrictRegex = new RegExp("^(" + longPieces.join("|") + ")", "i");
+ this._monthsShortStrictRegex = new RegExp("^(" + shortPieces.join("|") + ")", "i");
+ };
+ var daysInYear = // HELPERS
+ function daysInYear(year) {
+ return isLeapYear(year) ? 366 : 365;
+ };
+ var getIsLeapYear = function getIsLeapYear() {
+ return isLeapYear(this.year());
+ };
+ var createDate = function createDate(y, m, d, h, M, s, ms) {
+ // can't just apply() to create a date:
+ // https://stackoverflow.com/q/181348
+ var date;
+ // the date constructor remaps years 0-99 to 1900-1999
+ if (y < 100 && y >= 0) {
+ // preserve leap years using a full 400 year cycle, then reset
+ date = new Date(y + 400, m, d, h, M, s, ms);
+ if (isFinite(date.getFullYear())) date.setFullYear(y);
+ } else date = new Date(y, m, d, h, M, s, ms);
+ return date;
+ };
+ var createUTCDate = function createUTCDate(y) {
+ var date, args;
+ // the Date.UTC function remaps years 0-99 to 1900-1999
+ if (y < 100 && y >= 0) {
+ args = Array.prototype.slice.call(arguments);
+ // preserve leap years using a full 400 year cycle, then reset
+ args[0] = y + 400;
+ date = new Date(Date.UTC.apply(null, args));
+ if (isFinite(date.getUTCFullYear())) date.setUTCFullYear(y);
+ } else date = new Date(Date.UTC.apply(null, arguments));
+ return date;
+ };
+ var firstWeekOffset = // start-of-first-week - start-of-year
+ function firstWeekOffset(year, dow, doy) {
+ var fwd = 7 + dow - doy, // first-week day local weekday -- which local weekday is fwd
+ fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;
+ return -fwdlw + fwd - 1;
+ };
+ var dayOfYearFromWeeks = // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
+ function dayOfYearFromWeeks(year, week, weekday, dow, doy) {
+ var localWeekday = (7 + weekday - dow) % 7, weekOffset = firstWeekOffset(year, dow, doy), dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset, resYear, resDayOfYear;
+ if (dayOfYear <= 0) {
+ resYear = year - 1;
+ resDayOfYear = daysInYear(resYear) + dayOfYear;
+ } else if (dayOfYear > daysInYear(year)) {
+ resYear = year + 1;
+ resDayOfYear = dayOfYear - daysInYear(year);
+ } else {
+ resYear = year;
+ resDayOfYear = dayOfYear;
+ }
+ return {
+ year: resYear,
+ dayOfYear: resDayOfYear
+ };
+ };
+ var weekOfYear = function weekOfYear(mom, dow, doy) {
+ var weekOffset = firstWeekOffset(mom.year(), dow, doy), week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1, resWeek, resYear;
+ if (week < 1) {
+ resYear = mom.year() - 1;
+ resWeek = week + weeksInYear(resYear, dow, doy);
+ } else if (week > weeksInYear(mom.year(), dow, doy)) {
+ resWeek = week - weeksInYear(mom.year(), dow, doy);
+ resYear = mom.year() + 1;
+ } else {
+ resYear = mom.year();
+ resWeek = week;
+ }
+ return {
+ week: resWeek,
+ year: resYear
+ };
+ };
+ var weeksInYear = function weeksInYear(year, dow, doy) {
+ var weekOffset = firstWeekOffset(year, dow, doy), weekOffsetNext = firstWeekOffset(year + 1, dow, doy);
+ return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;
+ };
+ var localeWeek = // HELPERS
+ // LOCALES
+ function localeWeek(mom) {
+ return weekOfYear(mom, this._week.dow, this._week.doy).week;
+ };
+ var localeFirstDayOfWeek = function localeFirstDayOfWeek() {
+ return this._week.dow;
+ };
+ var localeFirstDayOfYear = function localeFirstDayOfYear() {
+ return this._week.doy;
+ };
+ var getSetWeek = // MOMENTS
+ function getSetWeek(input) {
+ var week = this.localeData().week(this);
+ return input == null ? week : this.add((input - week) * 7, "d");
+ };
+ var getSetISOWeek = function getSetISOWeek(input) {
+ var week = weekOfYear(this, 1, 4).week;
+ return input == null ? week : this.add((input - week) * 7, "d");
+ };
+ var parseWeekday = // HELPERS
+ function parseWeekday(input, locale) {
+ if (typeof input !== "string") return input;
+ if (!isNaN(input)) return parseInt(input, 10);
+ input = locale.weekdaysParse(input);
+ if (typeof input === "number") return input;
+ return null;
+ };
+ var parseIsoWeekday = function parseIsoWeekday(input, locale) {
+ if (typeof input === "string") return locale.weekdaysParse(input) % 7 || 7;
+ return isNaN(input) ? null : input;
+ };
+ var shiftWeekdays = // LOCALES
+ function shiftWeekdays(ws, n) {
+ return ws.slice(n, 7).concat(ws.slice(0, n));
+ };
+ var localeWeekdays = function localeWeekdays(m, format) {
+ var weekdays = isArray(this._weekdays) ? this._weekdays : this._weekdays[m && m !== true && this._weekdays.isFormat.test(format) ? "format" : "standalone"];
+ return m === true ? shiftWeekdays(weekdays, this._week.dow) : m ? weekdays[m.day()] : weekdays;
+ };
+ var localeWeekdaysShort = function localeWeekdaysShort(m) {
+ return m === true ? shiftWeekdays(this._weekdaysShort, this._week.dow) : m ? this._weekdaysShort[m.day()] : this._weekdaysShort;
+ };
+ var localeWeekdaysMin = function localeWeekdaysMin(m) {
+ return m === true ? shiftWeekdays(this._weekdaysMin, this._week.dow) : m ? this._weekdaysMin[m.day()] : this._weekdaysMin;
+ };
+ var handleStrictParse$1 = function handleStrictParse$1(weekdayName, format, strict) {
+ var i, ii, mom, llc = weekdayName.toLocaleLowerCase();
+ if (!this._weekdaysParse) {
+ this._weekdaysParse = [];
+ this._shortWeekdaysParse = [];
+ this._minWeekdaysParse = [];
+ for(i = 0; i < 7; ++i){
+ mom = createUTC([
+ 2000,
+ 1
+ ]).day(i);
+ this._minWeekdaysParse[i] = this.weekdaysMin(mom, "").toLocaleLowerCase();
+ this._shortWeekdaysParse[i] = this.weekdaysShort(mom, "").toLocaleLowerCase();
+ this._weekdaysParse[i] = this.weekdays(mom, "").toLocaleLowerCase();
+ }
+ }
+ if (strict) {
+ if (format === "dddd") {
+ ii = indexOf.call(this._weekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ } else if (format === "ddd") {
+ ii = indexOf.call(this._shortWeekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ } else {
+ ii = indexOf.call(this._minWeekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ }
+ } else {
+ if (format === "dddd") {
+ ii = indexOf.call(this._weekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._shortWeekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._minWeekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ } else if (format === "ddd") {
+ ii = indexOf.call(this._shortWeekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._weekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._minWeekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ } else {
+ ii = indexOf.call(this._minWeekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._weekdaysParse, llc);
+ if (ii !== -1) return ii;
+ ii = indexOf.call(this._shortWeekdaysParse, llc);
+ return ii !== -1 ? ii : null;
+ }
+ }
+ };
+ var localeWeekdaysParse = function localeWeekdaysParse(weekdayName, format, strict) {
+ var i, mom, regex;
+ if (this._weekdaysParseExact) return handleStrictParse$1.call(this, weekdayName, format, strict);
+ if (!this._weekdaysParse) {
+ this._weekdaysParse = [];
+ this._minWeekdaysParse = [];
+ this._shortWeekdaysParse = [];
+ this._fullWeekdaysParse = [];
+ }
+ for(i = 0; i < 7; i++){
+ // make the regex if we don't have it already
+ mom = createUTC([
+ 2000,
+ 1
+ ]).day(i);
+ if (strict && !this._fullWeekdaysParse[i]) {
+ this._fullWeekdaysParse[i] = new RegExp("^" + this.weekdays(mom, "").replace(".", "\\.?") + "$", "i");
+ this._shortWeekdaysParse[i] = new RegExp("^" + this.weekdaysShort(mom, "").replace(".", "\\.?") + "$", "i");
+ this._minWeekdaysParse[i] = new RegExp("^" + this.weekdaysMin(mom, "").replace(".", "\\.?") + "$", "i");
+ }
+ if (!this._weekdaysParse[i]) {
+ regex = "^" + this.weekdays(mom, "") + "|^" + this.weekdaysShort(mom, "") + "|^" + this.weekdaysMin(mom, "");
+ this._weekdaysParse[i] = new RegExp(regex.replace(".", ""), "i");
+ }
+ // test the regex
+ if (strict && format === "dddd" && this._fullWeekdaysParse[i].test(weekdayName)) return i;
+ else if (strict && format === "ddd" && this._shortWeekdaysParse[i].test(weekdayName)) return i;
+ else if (strict && format === "dd" && this._minWeekdaysParse[i].test(weekdayName)) return i;
+ else if (!strict && this._weekdaysParse[i].test(weekdayName)) return i;
+ }
+ };
+ var getSetDayOfWeek = // MOMENTS
+ function getSetDayOfWeek(input) {
+ if (!this.isValid()) return input != null ? this : NaN;
+ var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
+ if (input != null) {
+ input = parseWeekday(input, this.localeData());
+ return this.add(input - day, "d");
+ } else return day;
+ };
+ var getSetLocaleDayOfWeek = function getSetLocaleDayOfWeek(input) {
+ if (!this.isValid()) return input != null ? this : NaN;
+ var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;
+ return input == null ? weekday : this.add(input - weekday, "d");
+ };
+ var getSetISODayOfWeek = function getSetISODayOfWeek(input) {
+ if (!this.isValid()) return input != null ? this : NaN;
+ // behaves the same as moment#day except
+ // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)
+ // as a setter, sunday should belong to the previous week.
+ if (input != null) {
+ var weekday = parseIsoWeekday(input, this.localeData());
+ return this.day(this.day() % 7 ? weekday : weekday - 7);
+ } else return this.day() || 7;
+ };
+ var weekdaysRegex = function weekdaysRegex(isStrict) {
+ if (this._weekdaysParseExact) {
+ if (!hasOwnProp(this, "_weekdaysRegex")) computeWeekdaysParse.call(this);
+ if (isStrict) return this._weekdaysStrictRegex;
+ else return this._weekdaysRegex;
+ } else {
+ if (!hasOwnProp(this, "_weekdaysRegex")) this._weekdaysRegex = defaultWeekdaysRegex;
+ return this._weekdaysStrictRegex && isStrict ? this._weekdaysStrictRegex : this._weekdaysRegex;
+ }
+ };
+ var weekdaysShortRegex = function weekdaysShortRegex(isStrict) {
+ if (this._weekdaysParseExact) {
+ if (!hasOwnProp(this, "_weekdaysRegex")) computeWeekdaysParse.call(this);
+ if (isStrict) return this._weekdaysShortStrictRegex;
+ else return this._weekdaysShortRegex;
+ } else {
+ if (!hasOwnProp(this, "_weekdaysShortRegex")) this._weekdaysShortRegex = defaultWeekdaysShortRegex;
+ return this._weekdaysShortStrictRegex && isStrict ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex;
+ }
+ };
+ var weekdaysMinRegex = function weekdaysMinRegex(isStrict) {
+ if (this._weekdaysParseExact) {
+ if (!hasOwnProp(this, "_weekdaysRegex")) computeWeekdaysParse.call(this);
+ if (isStrict) return this._weekdaysMinStrictRegex;
+ else return this._weekdaysMinRegex;
+ } else {
+ if (!hasOwnProp(this, "_weekdaysMinRegex")) this._weekdaysMinRegex = defaultWeekdaysMinRegex;
+ return this._weekdaysMinStrictRegex && isStrict ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex;
+ }
+ };
+ var computeWeekdaysParse = function computeWeekdaysParse() {
+ function cmpLenRev(a, b) {
+ return b.length - a.length;
+ }
+ var minPieces = [], shortPieces = [], longPieces = [], mixedPieces = [], i, mom, minp, shortp, longp;
+ for(i = 0; i < 7; i++){
+ // make the regex if we don't have it already
+ mom = createUTC([
+ 2000,
+ 1
+ ]).day(i);
+ minp = regexEscape(this.weekdaysMin(mom, ""));
+ shortp = regexEscape(this.weekdaysShort(mom, ""));
+ longp = regexEscape(this.weekdays(mom, ""));
+ minPieces.push(minp);
+ shortPieces.push(shortp);
+ longPieces.push(longp);
+ mixedPieces.push(minp);
+ mixedPieces.push(shortp);
+ mixedPieces.push(longp);
+ }
+ // Sorting makes sure if one weekday (or abbr) is a prefix of another it
+ // will match the longer piece.
+ minPieces.sort(cmpLenRev);
+ shortPieces.sort(cmpLenRev);
+ longPieces.sort(cmpLenRev);
+ mixedPieces.sort(cmpLenRev);
+ this._weekdaysRegex = new RegExp("^(" + mixedPieces.join("|") + ")", "i");
+ this._weekdaysShortRegex = this._weekdaysRegex;
+ this._weekdaysMinRegex = this._weekdaysRegex;
+ this._weekdaysStrictRegex = new RegExp("^(" + longPieces.join("|") + ")", "i");
+ this._weekdaysShortStrictRegex = new RegExp("^(" + shortPieces.join("|") + ")", "i");
+ this._weekdaysMinStrictRegex = new RegExp("^(" + minPieces.join("|") + ")", "i");
+ };
+ var hFormat = // FORMATTING
+ function hFormat() {
+ return this.hours() % 12 || 12;
+ };
+ var kFormat = function kFormat() {
+ return this.hours() || 24;
+ };
+ var meridiem1 = function meridiem(token, lowercase) {
+ addFormatToken(token, 0, 0, function() {
+ return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);
+ });
+ };
+ var matchMeridiem = // PARSING
+ function matchMeridiem(isStrict, locale) {
+ return locale._meridiemParse;
+ };
+ var localeIsPM = // LOCALES
+ function localeIsPM(input) {
+ // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
+ // Using charAt should be more compatible.
+ return (input + "").toLowerCase().charAt(0) === "p";
+ };
+ var localeMeridiem = function localeMeridiem(hours, minutes, isLower) {
+ if (hours > 11) return isLower ? "pm" : "PM";
+ else return isLower ? "am" : "AM";
+ };
+ var commonPrefix = function commonPrefix(arr1, arr2) {
+ var i, minl = Math.min(arr1.length, arr2.length);
+ for(i = 0; i < minl; i += 1){
+ if (arr1[i] !== arr2[i]) return i;
+ }
+ return minl;
+ };
+ var normalizeLocale = function normalizeLocale(key) {
+ return key ? key.toLowerCase().replace("_", "-") : key;
+ };
+ var chooseLocale = // pick the locale from the array
+ // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
+ // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root
+ function chooseLocale(names) {
+ var i = 0, j, next, locale, split;
+ while(i < names.length){
+ split = normalizeLocale(names[i]).split("-");
+ j = split.length;
+ next = normalizeLocale(names[i + 1]);
+ next = next ? next.split("-") : null;
+ while(j > 0){
+ locale = loadLocale(split.slice(0, j).join("-"));
+ if (locale) return locale;
+ if (next && next.length >= j && commonPrefix(split, next) >= j - 1) break;
+ j--;
+ }
+ i++;
+ }
+ return globalLocale;
+ };
+ var isLocaleNameSane = function isLocaleNameSane(name) {
+ // Prevent names that look like filesystem paths, i.e contain '/' or '\'
+ return name.match("^[^/\\\\]*$") != null;
+ };
+ var loadLocale = function loadLocale(name) {
+ var oldLocale = null, aliasedRequire;
+ // TODO: Find a better way to register and load all the locales in Node
+ if (locales[name] === undefined && true && module && module.exports && isLocaleNameSane(name)) try {
+ oldLocale = globalLocale._abbr;
+ aliasedRequire = undefined;
+ aliasedRequire("./locale/" + name);
+ getSetGlobalLocale(oldLocale);
+ } catch (e) {
+ // mark as not found to avoid repeating expensive file require call causing high CPU
+ // when trying to find en-US, en_US, en-us for every format call
+ locales[name] = null; // null means not found
+ }
+ return locales[name];
+ };
+ var getSetGlobalLocale = // This function will load locale and then set the global locale. If
+ // no arguments are passed in, it will simply return the current global
+ // locale key.
+ function getSetGlobalLocale(key, values) {
+ var data;
+ if (key) {
+ if (isUndefined(values)) data = getLocale(key);
+ else data = defineLocale(key, values);
+ if (data) // moment.duration._locale = moment._locale = data;
+ globalLocale = data;
+ else if (typeof console !== "undefined" && console.warn) //warn user if arguments are passed but the locale could not be set
+ console.warn("Locale " + key + " not found. Did you forget to load it?");
+ }
+ return globalLocale._abbr;
+ };
+ var updateLocale = function updateLocale(name, config) {
+ if (config != null) {
+ var locale, tmpLocale, parentConfig = baseConfig;
+ if (locales[name] != null && locales[name].parentLocale != null) // Update existing child locale in-place to avoid memory-leaks
+ locales[name].set(mergeConfigs(locales[name]._config, config));
+ else {
+ // MERGE
+ tmpLocale = loadLocale(name);
+ if (tmpLocale != null) parentConfig = tmpLocale._config;
+ config = mergeConfigs(parentConfig, config);
+ if (tmpLocale == null) // updateLocale is called for creating a new locale
+ // Set abbr so it will have a name (getters return
+ // undefined otherwise).
+ config.abbr = name;
+ locale = new Locale(config);
+ locale.parentLocale = locales[name];
+ locales[name] = locale;
+ }
+ // backwards compat for now: also set the locale
+ getSetGlobalLocale(name);
+ } else // pass null for config to unupdate, useful for tests
+ if (locales[name] != null) {
+ if (locales[name].parentLocale != null) {
+ locales[name] = locales[name].parentLocale;
+ if (name === getSetGlobalLocale()) getSetGlobalLocale(name);
+ } else if (locales[name] != null) delete locales[name];
+ }
+ return locales[name];
+ };
+ var getLocale = // returns locale data
+ function getLocale(key) {
+ var locale;
+ if (key && key._locale && key._locale._abbr) key = key._locale._abbr;
+ if (!key) return globalLocale;
+ if (!isArray(key)) {
+ //short-circuit everything else
+ locale = loadLocale(key);
+ if (locale) return locale;
+ key = [
+ key
+ ];
+ }
+ return chooseLocale(key);
+ };
+ var listLocales = function listLocales() {
+ return keys(locales);
+ };
+ var checkOverflow = function checkOverflow(m) {
+ var overflow, a = m._a;
+ if (a && getParsingFlags(m).overflow === -2) {
+ overflow = a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : a[HOUR] < 0 || a[HOUR] > 24 || a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0) ? HOUR : a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : -1;
+ if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) overflow = DATE;
+ if (getParsingFlags(m)._overflowWeeks && overflow === -1) overflow = WEEK;
+ if (getParsingFlags(m)._overflowWeekday && overflow === -1) overflow = WEEKDAY;
+ getParsingFlags(m).overflow = overflow;
+ }
+ return m;
+ };
+ var configFromISO = // date from iso format
+ function configFromISO(config) {
+ var i, l, string = config._i, match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), allowTime, dateFormat, timeFormat, tzFormat, isoDatesLen = isoDates.length, isoTimesLen = isoTimes.length;
+ if (match) {
+ getParsingFlags(config).iso = true;
+ for(i = 0, l = isoDatesLen; i < l; i++)if (isoDates[i][1].exec(match[1])) {
+ dateFormat = isoDates[i][0];
+ allowTime = isoDates[i][2] !== false;
+ break;
+ }
+ if (dateFormat == null) {
+ config._isValid = false;
+ return;
+ }
+ if (match[3]) {
+ for(i = 0, l = isoTimesLen; i < l; i++)if (isoTimes[i][1].exec(match[3])) {
+ // match[2] should be 'T' or space
+ timeFormat = (match[2] || " ") + isoTimes[i][0];
+ break;
+ }
+ if (timeFormat == null) {
+ config._isValid = false;
+ return;
+ }
+ }
+ if (!allowTime && timeFormat != null) {
+ config._isValid = false;
+ return;
+ }
+ if (match[4]) {
+ if (tzRegex.exec(match[4])) tzFormat = "Z";
+ else {
+ config._isValid = false;
+ return;
+ }
+ }
+ config._f = dateFormat + (timeFormat || "") + (tzFormat || "");
+ configFromStringAndFormat(config);
+ } else config._isValid = false;
+ };
+ var extractFromRFC2822Strings = function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) {
+ var result = [
+ untruncateYear(yearStr),
+ defaultLocaleMonthsShort.indexOf(monthStr),
+ parseInt(dayStr, 10),
+ parseInt(hourStr, 10),
+ parseInt(minuteStr, 10),
+ ];
+ if (secondStr) result.push(parseInt(secondStr, 10));
+ return result;
+ };
+ var untruncateYear = function untruncateYear(yearStr) {
+ var year = parseInt(yearStr, 10);
+ if (year <= 49) return 2000 + year;
+ else if (year <= 999) return 1900 + year;
+ return year;
+ };
+ var preprocessRFC2822 = function preprocessRFC2822(s) {
+ // Remove comments and folding whitespace and replace multiple-spaces with a single space
+ return s.replace(/\([^()]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, "");
+ };
+ var checkWeekday = function checkWeekday(weekdayStr, parsedInput, config) {
+ if (weekdayStr) {
+ // TODO: Replace the vanilla JS Date object with an independent day-of-week check.
+ var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay();
+ if (weekdayProvided !== weekdayActual) {
+ getParsingFlags(config).weekdayMismatch = true;
+ config._isValid = false;
+ return false;
+ }
+ }
+ return true;
+ };
+ var calculateOffset = function calculateOffset(obsOffset, militaryOffset, numOffset) {
+ if (obsOffset) return obsOffsets[obsOffset];
+ else if (militaryOffset) // the only allowed military tz is Z
+ return 0;
+ else {
+ var hm = parseInt(numOffset, 10), m = hm % 100, h = (hm - m) / 100;
+ return h * 60 + m;
+ }
+ };
+ var configFromRFC2822 = // date and time from ref 2822 format
+ function configFromRFC2822(config) {
+ var match = rfc2822.exec(preprocessRFC2822(config._i)), parsedArray;
+ if (match) {
+ parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]);
+ if (!checkWeekday(match[1], parsedArray, config)) return;
+ config._a = parsedArray;
+ config._tzm = calculateOffset(match[8], match[9], match[10]);
+ config._d = createUTCDate.apply(null, config._a);
+ config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
+ getParsingFlags(config).rfc2822 = true;
+ } else config._isValid = false;
+ };
+ var configFromString = // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict
+ function configFromString(config) {
+ var matched = aspNetJsonRegex.exec(config._i);
+ if (matched !== null) {
+ config._d = new Date(+matched[1]);
+ return;
+ }
+ configFromISO(config);
+ if (config._isValid === false) delete config._isValid;
+ else return;
+ configFromRFC2822(config);
+ if (config._isValid === false) delete config._isValid;
+ else return;
+ if (config._strict) config._isValid = false;
+ else // Final attempt, use Input Fallback
+ hooks.createFromInputFallback(config);
+ };
+ var defaults = // Pick the first defined of two or three arguments.
+ function defaults(a, b, c) {
+ if (a != null) return a;
+ if (b != null) return b;
+ return c;
+ };
+ var currentDateArray = function currentDateArray(config) {
+ // hooks is actually the exported moment object
+ var nowValue = new Date(hooks.now());
+ if (config._useUTC) return [
+ nowValue.getUTCFullYear(),
+ nowValue.getUTCMonth(),
+ nowValue.getUTCDate(),
+ ];
+ return [
+ nowValue.getFullYear(),
+ nowValue.getMonth(),
+ nowValue.getDate()
+ ];
+ };
+ var configFromArray = // convert an array to a date.
+ // the array should mirror the parameters below
+ // note: all values past the year are optional and will default to the lowest possible value.
+ // [year, month, day , hour, minute, second, millisecond]
+ function configFromArray(config) {
+ var i, date, input = [], currentDate, expectedWeekday, yearToUse;
+ if (config._d) return;
+ currentDate = currentDateArray(config);
+ //compute day of the year from weeks and weekdays
+ if (config._w && config._a[DATE] == null && config._a[MONTH] == null) dayOfYearFromWeekInfo(config);
+ //if the day of the year is set, figure out what it is
+ if (config._dayOfYear != null) {
+ yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
+ if (config._dayOfYear > daysInYear(yearToUse) || config._dayOfYear === 0) getParsingFlags(config)._overflowDayOfYear = true;
+ date = createUTCDate(yearToUse, 0, config._dayOfYear);
+ config._a[MONTH] = date.getUTCMonth();
+ config._a[DATE] = date.getUTCDate();
+ }
+ // Default to current date.
+ // * if no year, month, day of month are given, default to today
+ // * if day of month is given, default month and year
+ // * if month is given, default only year
+ // * if year is given, don't default anything
+ for(i = 0; i < 3 && config._a[i] == null; ++i)config._a[i] = input[i] = currentDate[i];
+ // Zero out whatever was not defaulted, including time
+ for(; i < 7; i++)config._a[i] = input[i] = config._a[i] == null ? i === 2 ? 1 : 0 : config._a[i];
+ // Check for 24:00:00.000
+ if (config._a[HOUR] === 24 && config._a[MINUTE] === 0 && config._a[SECOND] === 0 && config._a[MILLISECOND] === 0) {
+ config._nextDay = true;
+ config._a[HOUR] = 0;
+ }
+ config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
+ expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();
+ // Apply timezone offset from input. The actual utcOffset can be changed
+ // with parseZone.
+ if (config._tzm != null) config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
+ if (config._nextDay) config._a[HOUR] = 24;
+ // check for mismatching day of week
+ if (config._w && typeof config._w.d !== "undefined" && config._w.d !== expectedWeekday) getParsingFlags(config).weekdayMismatch = true;
+ };
+ var dayOfYearFromWeekInfo = function dayOfYearFromWeekInfo(config) {
+ var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;
+ w = config._w;
+ if (w.GG != null || w.W != null || w.E != null) {
+ dow = 1;
+ doy = 4;
+ // TODO: We need to take the current isoWeekYear, but that depends on
+ // how we interpret now (local, utc, fixed offset). So create
+ // a now version of current config (take local/utc/offset flags, and
+ // create now).
+ weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year);
+ week = defaults(w.W, 1);
+ weekday = defaults(w.E, 1);
+ if (weekday < 1 || weekday > 7) weekdayOverflow = true;
+ } else {
+ dow = config._locale._week.dow;
+ doy = config._locale._week.doy;
+ curWeek = weekOfYear(createLocal(), dow, doy);
+ weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);
+ // Default to current week.
+ week = defaults(w.w, curWeek.week);
+ if (w.d != null) {
+ // weekday -- low day numbers are considered next week
+ weekday = w.d;
+ if (weekday < 0 || weekday > 6) weekdayOverflow = true;
+ } else if (w.e != null) {
+ // local weekday -- counting starts from beginning of week
+ weekday = w.e + dow;
+ if (w.e < 0 || w.e > 6) weekdayOverflow = true;
+ } else // default to beginning of week
+ weekday = dow;
+ }
+ if (week < 1 || week > weeksInYear(weekYear, dow, doy)) getParsingFlags(config)._overflowWeeks = true;
+ else if (weekdayOverflow != null) getParsingFlags(config)._overflowWeekday = true;
+ else {
+ temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);
+ config._a[YEAR] = temp.year;
+ config._dayOfYear = temp.dayOfYear;
+ }
+ };
+ var configFromStringAndFormat = // date from string and format string
+ function configFromStringAndFormat(config) {
+ // TODO: Move this to another part of the creation flow to prevent circular deps
+ if (config._f === hooks.ISO_8601) {
+ configFromISO(config);
+ return;
+ }
+ if (config._f === hooks.RFC_2822) {
+ configFromRFC2822(config);
+ return;
+ }
+ config._a = [];
+ getParsingFlags(config).empty = true;
+ // This array is used to make a Date, either with `new Date` or `Date.UTC`
+ var string = "" + config._i, i, parsedInput, tokens, token, skipped, stringLength = string.length, totalParsedInputLength = 0, era, tokenLen;
+ tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];
+ tokenLen = tokens.length;
+ for(i = 0; i < tokenLen; i++){
+ token = tokens[i];
+ parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];
+ if (parsedInput) {
+ skipped = string.substr(0, string.indexOf(parsedInput));
+ if (skipped.length > 0) getParsingFlags(config).unusedInput.push(skipped);
+ string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
+ totalParsedInputLength += parsedInput.length;
+ }
+ // don't parse if it's not a known token
+ if (formatTokenFunctions[token]) {
+ if (parsedInput) getParsingFlags(config).empty = false;
+ else getParsingFlags(config).unusedTokens.push(token);
+ addTimeToArrayFromToken(token, parsedInput, config);
+ } else if (config._strict && !parsedInput) getParsingFlags(config).unusedTokens.push(token);
+ }
+ // add remaining unparsed input length to the string
+ getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
+ if (string.length > 0) getParsingFlags(config).unusedInput.push(string);
+ // clear _12h flag if hour is <= 12
+ if (config._a[HOUR] <= 12 && getParsingFlags(config).bigHour === true && config._a[HOUR] > 0) getParsingFlags(config).bigHour = undefined;
+ getParsingFlags(config).parsedDateParts = config._a.slice(0);
+ getParsingFlags(config).meridiem = config._meridiem;
+ // handle meridiem
+ config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);
+ // handle era
+ era = getParsingFlags(config).era;
+ if (era !== null) config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);
+ configFromArray(config);
+ checkOverflow(config);
+ };
+ var meridiemFixWrap = function meridiemFixWrap(locale, hour, meridiem) {
+ var isPm;
+ if (meridiem == null) // nothing to do
+ return hour;
+ if (locale.meridiemHour != null) return locale.meridiemHour(hour, meridiem);
+ else if (locale.isPM != null) {
+ // Fallback
+ isPm = locale.isPM(meridiem);
+ if (isPm && hour < 12) hour += 12;
+ if (!isPm && hour === 12) hour = 0;
+ return hour;
+ } else // this is not supposed to happen
+ return hour;
+ };
+ var configFromStringAndArray = // date from string and array of format strings
+ function configFromStringAndArray(config) {
+ var tempConfig, bestMoment, scoreToBeat, i, currentScore, validFormatFound, bestFormatIsValid = false, configfLen = config._f.length;
+ if (configfLen === 0) {
+ getParsingFlags(config).invalidFormat = true;
+ config._d = new Date(NaN);
+ return;
+ }
+ for(i = 0; i < configfLen; i++){
+ currentScore = 0;
+ validFormatFound = false;
+ tempConfig = copyConfig({}, config);
+ if (config._useUTC != null) tempConfig._useUTC = config._useUTC;
+ tempConfig._f = config._f[i];
+ configFromStringAndFormat(tempConfig);
+ if (isValid(tempConfig)) validFormatFound = true;
+ // if there is any input that was not parsed add a penalty for that format
+ currentScore += getParsingFlags(tempConfig).charsLeftOver;
+ //or tokens
+ currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
+ getParsingFlags(tempConfig).score = currentScore;
+ if (!bestFormatIsValid) {
+ if (scoreToBeat == null || currentScore < scoreToBeat || validFormatFound) {
+ scoreToBeat = currentScore;
+ bestMoment = tempConfig;
+ if (validFormatFound) bestFormatIsValid = true;
+ }
+ } else if (currentScore < scoreToBeat) {
+ scoreToBeat = currentScore;
+ bestMoment = tempConfig;
+ }
+ }
+ extend(config, bestMoment || tempConfig);
+ };
+ var configFromObject = function configFromObject(config) {
+ if (config._d) return;
+ var i = normalizeObjectUnits(config._i), dayOrDate = i.day === undefined ? i.date : i.day;
+ config._a = map([
+ i.year,
+ i.month,
+ dayOrDate,
+ i.hour,
+ i.minute,
+ i.second,
+ i.millisecond
+ ], function(obj) {
+ return obj && parseInt(obj, 10);
+ });
+ configFromArray(config);
+ };
+ var createFromConfig = function createFromConfig(config) {
+ var res = new Moment(checkOverflow(prepareConfig(config)));
+ if (res._nextDay) {
+ // Adding is smart enough around DST
+ res.add(1, "d");
+ res._nextDay = undefined;
+ }
+ return res;
+ };
+ var prepareConfig = function prepareConfig(config) {
+ var input = config._i, format = config._f;
+ config._locale = config._locale || getLocale(config._l);
+ if (input === null || format === undefined && input === "") return createInvalid({
+ nullInput: true
+ });
+ if (typeof input === "string") config._i = input = config._locale.preparse(input);
+ if (isMoment(input)) return new Moment(checkOverflow(input));
+ else if (isDate(input)) config._d = input;
+ else if (isArray(format)) configFromStringAndArray(config);
+ else if (format) configFromStringAndFormat(config);
+ else configFromInput(config);
+ if (!isValid(config)) config._d = null;
+ return config;
+ };
+ var configFromInput = function configFromInput(config) {
+ var input = config._i;
+ if (isUndefined(input)) config._d = new Date(hooks.now());
+ else if (isDate(input)) config._d = new Date(input.valueOf());
+ else if (typeof input === "string") configFromString(config);
+ else if (isArray(input)) {
+ config._a = map(input.slice(0), function(obj) {
+ return parseInt(obj, 10);
+ });
+ configFromArray(config);
+ } else if (isObject(input)) configFromObject(config);
+ else if (isNumber(input)) // from milliseconds
+ config._d = new Date(input);
+ else hooks.createFromInputFallback(config);
+ };
+ var createLocalOrUTC = function createLocalOrUTC(input, format, locale, strict, isUTC) {
+ var c = {};
+ if (format === true || format === false) {
+ strict = format;
+ format = undefined;
+ }
+ if (locale === true || locale === false) {
+ strict = locale;
+ locale = undefined;
+ }
+ if (isObject(input) && isObjectEmpty(input) || isArray(input) && input.length === 0) input = undefined;
+ // object construction must be done this way.
+ // https://github.com/moment/moment/issues/1423
+ c._isAMomentObject = true;
+ c._useUTC = c._isUTC = isUTC;
+ c._l = locale;
+ c._i = input;
+ c._f = format;
+ c._strict = strict;
+ return createFromConfig(c);
+ };
+ var createLocal = function createLocal(input, format, locale, strict) {
+ return createLocalOrUTC(input, format, locale, strict, false);
+ };
+ var pickBy = // Pick a moment m from moments so that m[fn](other) is true for all
+ // other. This relies on the function fn to be transitive.
+ //
+ // moments should either be an array of moment objects or an array, whose
+ // first element is an array of moment objects.
+ function pickBy(fn, moments) {
+ var res, i;
+ if (moments.length === 1 && isArray(moments[0])) moments = moments[0];
+ if (!moments.length) return createLocal();
+ res = moments[0];
+ for(i = 1; i < moments.length; ++i)if (!moments[i].isValid() || moments[i][fn](res)) res = moments[i];
+ return res;
+ };
+ var min = // TODO: Use [].sort instead?
+ function min() {
+ var args = [].slice.call(arguments, 0);
+ return pickBy("isBefore", args);
+ };
+ var max = function max() {
+ var args = [].slice.call(arguments, 0);
+ return pickBy("isAfter", args);
+ };
+ var isDurationValid = function isDurationValid(m) {
+ var key, unitHasDecimal = false, i, orderLen = ordering.length;
+ for(key in m){
+ if (hasOwnProp(m, key) && !(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) return false;
+ }
+ for(i = 0; i < orderLen; ++i)if (m[ordering[i]]) {
+ if (unitHasDecimal) return false; // only allow non-integers for smallest unit
+ if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) unitHasDecimal = true;
+ }
+ return true;
+ };
+ var isValid$1 = function isValid$1() {
+ return this._isValid;
+ };
+ var createInvalid$1 = function createInvalid$1() {
+ return createDuration(NaN);
+ };
+ var Duration = function Duration(duration) {
+ var normalizedInput = normalizeObjectUnits(duration), years = normalizedInput.year || 0, quarters = normalizedInput.quarter || 0, months = normalizedInput.month || 0, weeks = normalizedInput.week || normalizedInput.isoWeek || 0, days = normalizedInput.day || 0, hours = normalizedInput.hour || 0, minutes = normalizedInput.minute || 0, seconds = normalizedInput.second || 0, milliseconds = normalizedInput.millisecond || 0;
+ this._isValid = isDurationValid(normalizedInput);
+ // representation for dateAddRemove
+ this._milliseconds = +milliseconds + seconds * 1e3 + minutes * 6e4 + hours * 3600000; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978
+ // Because of dateAddRemove treats 24 hours as different from a
+ // day when working around DST, we need to store them separately
+ this._days = +days + weeks * 7;
+ // It is impossible to translate months into days without knowing
+ // which months you are are talking about, so we have to store
+ // it separately.
+ this._months = +months + quarters * 3 + years * 12;
+ this._data = {};
+ this._locale = getLocale();
+ this._bubble();
+ };
+ var isDuration = function isDuration(obj) {
+ return obj instanceof Duration;
+ };
+ var absRound = function absRound(number) {
+ if (number < 0) return Math.round(-1 * number) * -1;
+ else return Math.round(number);
+ };
+ var compareArrays = // compare two arrays, return the number of differences
+ function compareArrays(array1, array2, dontConvert) {
+ var len = Math.min(array1.length, array2.length), lengthDiff = Math.abs(array1.length - array2.length), diffs = 0, i;
+ for(i = 0; i < len; i++)if (dontConvert && array1[i] !== array2[i] || !dontConvert && toInt(array1[i]) !== toInt(array2[i])) diffs++;
+ return diffs + lengthDiff;
+ };
+ var offset1 = // FORMATTING
+ function offset1(token, separator) {
+ addFormatToken(token, 0, 0, function() {
+ var offset = this.utcOffset(), sign = "+";
+ if (offset < 0) {
+ offset = -offset;
+ sign = "-";
+ }
+ return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~offset % 60, 2);
+ });
+ };
+ var offsetFromString = function offsetFromString(matcher, string) {
+ var matches = (string || "").match(matcher), chunk, parts, minutes;
+ if (matches === null) return null;
+ chunk = matches[matches.length - 1] || [];
+ parts = (chunk + "").match(chunkOffset) || [
+ "-",
+ 0,
+ 0
+ ];
+ minutes = +(parts[1] * 60) + toInt(parts[2]);
+ return minutes === 0 ? 0 : parts[0] === "+" ? minutes : -minutes;
+ };
+ var cloneWithOffset = // Return a moment from input, that is local/utc/zone equivalent to model.
+ function cloneWithOffset(input, model) {
+ var res, diff;
+ if (model._isUTC) {
+ res = model.clone();
+ diff = (isMoment(input) || isDate(input) ? input.valueOf() : createLocal(input).valueOf()) - res.valueOf();
+ // Use low-level api, because this fn is low-level api.
+ res._d.setTime(res._d.valueOf() + diff);
+ hooks.updateOffset(res, false);
+ return res;
+ } else return createLocal(input).local();
+ };
+ var getDateOffset = function getDateOffset(m) {
+ // On Firefox.24 Date#getTimezoneOffset returns a floating point.
+ // https://github.com/moment/moment/pull/1871
+ return -Math.round(m._d.getTimezoneOffset());
+ };
+ var getSetOffset = // MOMENTS
+ // keepLocalTime = true means only change the timezone, without
+ // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
+ // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
+ // +0200, so we adjust the time as needed, to be valid.
+ //
+ // Keeping the time actually adds/subtracts (one hour)
+ // from the actual represented time. That is why we call updateOffset
+ // a second time. In case it wants us to change the offset again
+ // _changeInProgress == true case, then we have to adjust, because
+ // there is no such time in the given timezone.
+ function getSetOffset(input, keepLocalTime, keepMinutes) {
+ var offset = this._offset || 0, localAdjust;
+ if (!this.isValid()) return input != null ? this : NaN;
+ if (input != null) {
+ if (typeof input === "string") {
+ input = offsetFromString(matchShortOffset, input);
+ if (input === null) return this;
+ } else if (Math.abs(input) < 16 && !keepMinutes) input = input * 60;
+ if (!this._isUTC && keepLocalTime) localAdjust = getDateOffset(this);
+ this._offset = input;
+ this._isUTC = true;
+ if (localAdjust != null) this.add(localAdjust, "m");
+ if (offset !== input) {
+ if (!keepLocalTime || this._changeInProgress) addSubtract(this, createDuration(input - offset, "m"), 1, false);
+ else if (!this._changeInProgress) {
+ this._changeInProgress = true;
+ hooks.updateOffset(this, true);
+ this._changeInProgress = null;
+ }
+ }
+ return this;
+ } else return this._isUTC ? offset : getDateOffset(this);
+ };
+ var getSetZone = function getSetZone(input, keepLocalTime) {
+ if (input != null) {
+ if (typeof input !== "string") input = -input;
+ this.utcOffset(input, keepLocalTime);
+ return this;
+ } else return -this.utcOffset();
+ };
+ var setOffsetToUTC = function setOffsetToUTC(keepLocalTime) {
+ return this.utcOffset(0, keepLocalTime);
+ };
+ var setOffsetToLocal = function setOffsetToLocal(keepLocalTime) {
+ if (this._isUTC) {
+ this.utcOffset(0, keepLocalTime);
+ this._isUTC = false;
+ if (keepLocalTime) this.subtract(getDateOffset(this), "m");
+ }
+ return this;
+ };
+ var setOffsetToParsedOffset = function setOffsetToParsedOffset() {
+ if (this._tzm != null) this.utcOffset(this._tzm, false, true);
+ else if (typeof this._i === "string") {
+ var tZone = offsetFromString(matchOffset, this._i);
+ if (tZone != null) this.utcOffset(tZone);
+ else this.utcOffset(0, true);
+ }
+ return this;
+ };
+ var hasAlignedHourOffset = function hasAlignedHourOffset(input) {
+ if (!this.isValid()) return false;
+ input = input ? createLocal(input).utcOffset() : 0;
+ return (this.utcOffset() - input) % 60 === 0;
+ };
+ var isDaylightSavingTime = function isDaylightSavingTime() {
+ return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset();
+ };
+ var isDaylightSavingTimeShifted = function isDaylightSavingTimeShifted() {
+ if (!isUndefined(this._isDSTShifted)) return this._isDSTShifted;
+ var c = {}, other;
+ copyConfig(c, this);
+ c = prepareConfig(c);
+ if (c._a) {
+ other = c._isUTC ? createUTC(c._a) : createLocal(c._a);
+ this._isDSTShifted = this.isValid() && compareArrays(c._a, other.toArray()) > 0;
+ } else this._isDSTShifted = false;
+ return this._isDSTShifted;
+ };
+ var isLocal = function isLocal() {
+ return this.isValid() ? !this._isUTC : false;
+ };
+ var isUtcOffset = function isUtcOffset() {
+ return this.isValid() ? this._isUTC : false;
+ };
+ var isUtc = function isUtc() {
+ return this.isValid() ? this._isUTC && this._offset === 0 : false;
+ };
+ var createDuration = function createDuration(input, key) {
+ var duration = input, // matching against regexp is expensive, do it on demand
+ match = null, sign, ret, diffRes;
+ if (isDuration(input)) duration = {
+ ms: input._milliseconds,
+ d: input._days,
+ M: input._months
+ };
+ else if (isNumber(input) || !isNaN(+input)) {
+ duration = {};
+ if (key) duration[key] = +input;
+ else duration.milliseconds = +input;
+ } else if (match = aspNetRegex.exec(input)) {
+ sign = match[1] === "-" ? -1 : 1;
+ duration = {
+ y: 0,
+ d: toInt(match[DATE]) * sign,
+ h: toInt(match[HOUR]) * sign,
+ m: toInt(match[MINUTE]) * sign,
+ s: toInt(match[SECOND]) * sign,
+ ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign
+ };
+ } else if (match = isoRegex.exec(input)) {
+ sign = match[1] === "-" ? -1 : 1;
+ duration = {
+ y: parseIso(match[2], sign),
+ M: parseIso(match[3], sign),
+ w: parseIso(match[4], sign),
+ d: parseIso(match[5], sign),
+ h: parseIso(match[6], sign),
+ m: parseIso(match[7], sign),
+ s: parseIso(match[8], sign)
+ };
+ } else if (duration == null) // checks for null or undefined
+ duration = {};
+ else if (typeof duration === "object" && ("from" in duration || "to" in duration)) {
+ diffRes = momentsDifference(createLocal(duration.from), createLocal(duration.to));
+ duration = {};
+ duration.ms = diffRes.milliseconds;
+ duration.M = diffRes.months;
+ }
+ ret = new Duration(duration);
+ if (isDuration(input) && hasOwnProp(input, "_locale")) ret._locale = input._locale;
+ if (isDuration(input) && hasOwnProp(input, "_isValid")) ret._isValid = input._isValid;
+ return ret;
+ };
+ var parseIso = function parseIso(inp, sign) {
+ // We'd normally use ~~inp for this, but unfortunately it also
+ // converts floats to ints.
+ // inp may be undefined, so careful calling replace on it.
+ var res = inp && parseFloat(inp.replace(",", "."));
+ // apply sign while we're at it
+ return (isNaN(res) ? 0 : res) * sign;
+ };
+ var positiveMomentsDifference = function positiveMomentsDifference(base, other) {
+ var res = {};
+ res.months = other.month() - base.month() + (other.year() - base.year()) * 12;
+ if (base.clone().add(res.months, "M").isAfter(other)) --res.months;
+ res.milliseconds = +other - +base.clone().add(res.months, "M");
+ return res;
+ };
+ var momentsDifference = function momentsDifference(base, other) {
+ var res;
+ if (!(base.isValid() && other.isValid())) return {
+ milliseconds: 0,
+ months: 0
+ };
+ other = cloneWithOffset(other, base);
+ if (base.isBefore(other)) res = positiveMomentsDifference(base, other);
+ else {
+ res = positiveMomentsDifference(other, base);
+ res.milliseconds = -res.milliseconds;
+ res.months = -res.months;
+ }
+ return res;
+ };
+ var createAdder = // TODO: remove 'name' arg after deprecation is removed
+ function createAdder(direction, name) {
+ return function(val, period) {
+ var dur, tmp;
+ //invert the arguments, but complain about it
+ if (period !== null && !isNaN(+period)) {
+ deprecateSimple(name, "moment()." + name + "(period, number) is deprecated. Please use moment()." + name + "(number, period). " + "See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.");
+ tmp = val;
+ val = period;
+ period = tmp;
+ }
+ dur = createDuration(val, period);
+ addSubtract(this, dur, direction);
+ return this;
+ };
+ };
+ var addSubtract = function addSubtract(mom, duration, isAdding, updateOffset) {
+ var milliseconds = duration._milliseconds, days = absRound(duration._days), months = absRound(duration._months);
+ if (!mom.isValid()) // No op
+ return;
+ updateOffset = updateOffset == null ? true : updateOffset;
+ if (months) setMonth(mom, get(mom, "Month") + months * isAdding);
+ if (days) set$1(mom, "Date", get(mom, "Date") + days * isAdding);
+ if (milliseconds) mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);
+ if (updateOffset) hooks.updateOffset(mom, days || months);
+ };
+ var isString = function isString(input) {
+ return typeof input === "string" || input instanceof String;
+ };
+ var isMomentInput = // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined
+ function isMomentInput(input) {
+ return isMoment(input) || isDate(input) || isString(input) || isNumber(input) || isNumberOrStringArray(input) || isMomentInputObject(input) || input === null || input === undefined;
+ };
+ var isMomentInputObject = function isMomentInputObject(input) {
+ var objectTest = isObject(input) && !isObjectEmpty(input), propertyTest = false, properties = [
+ "years",
+ "year",
+ "y",
+ "months",
+ "month",
+ "M",
+ "days",
+ "day",
+ "d",
+ "dates",
+ "date",
+ "D",
+ "hours",
+ "hour",
+ "h",
+ "minutes",
+ "minute",
+ "m",
+ "seconds",
+ "second",
+ "s",
+ "milliseconds",
+ "millisecond",
+ "ms",
+ ], i, property, propertyLen = properties.length;
+ for(i = 0; i < propertyLen; i += 1){
+ property = properties[i];
+ propertyTest = propertyTest || hasOwnProp(input, property);
+ }
+ return objectTest && propertyTest;
+ };
+ var isNumberOrStringArray = function isNumberOrStringArray(input) {
+ var arrayTest = isArray(input), dataTypeTest = false;
+ if (arrayTest) dataTypeTest = input.filter(function(item) {
+ return !isNumber(item) && isString(input);
+ }).length === 0;
+ return arrayTest && dataTypeTest;
+ };
+ var isCalendarSpec = function isCalendarSpec(input) {
+ var objectTest = isObject(input) && !isObjectEmpty(input), propertyTest = false, properties = [
+ "sameDay",
+ "nextDay",
+ "lastDay",
+ "nextWeek",
+ "lastWeek",
+ "sameElse",
+ ], i, property;
+ for(i = 0; i < properties.length; i += 1){
+ property = properties[i];
+ propertyTest = propertyTest || hasOwnProp(input, property);
+ }
+ return objectTest && propertyTest;
+ };
+ var getCalendarFormat = function getCalendarFormat(myMoment, now) {
+ var diff = myMoment.diff(now, "days", true);
+ return diff < -6 ? "sameElse" : diff < -1 ? "lastWeek" : diff < 0 ? "lastDay" : diff < 1 ? "sameDay" : diff < 2 ? "nextDay" : diff < 7 ? "nextWeek" : "sameElse";
+ };
+ var calendar$1 = function calendar$1(time, formats) {
+ // Support for single parameter, formats only overload to the calendar function
+ if (arguments.length === 1) {
+ if (!arguments[0]) {
+ time = undefined;
+ formats = undefined;
+ } else if (isMomentInput(arguments[0])) {
+ time = arguments[0];
+ formats = undefined;
+ } else if (isCalendarSpec(arguments[0])) {
+ formats = arguments[0];
+ time = undefined;
+ }
+ }
+ // We want to compare the start of today, vs this.
+ // Getting start-of-today depends on whether we're local/utc/offset or not.
+ var now = time || createLocal(), sod = cloneWithOffset(now, this).startOf("day"), format = hooks.calendarFormat(this, sod) || "sameElse", output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);
+ return this.format(output || this.localeData().calendar(format, this, createLocal(now)));
+ };
+ var clone = function clone() {
+ return new Moment(this);
+ };
+ var isAfter = function isAfter(input, units) {
+ var localInput = isMoment(input) ? input : createLocal(input);
+ if (!(this.isValid() && localInput.isValid())) return false;
+ units = normalizeUnits(units) || "millisecond";
+ if (units === "millisecond") return this.valueOf() > localInput.valueOf();
+ else return localInput.valueOf() < this.clone().startOf(units).valueOf();
+ };
+ var isBefore = function isBefore(input, units) {
+ var localInput = isMoment(input) ? input : createLocal(input);
+ if (!(this.isValid() && localInput.isValid())) return false;
+ units = normalizeUnits(units) || "millisecond";
+ if (units === "millisecond") return this.valueOf() < localInput.valueOf();
+ else return this.clone().endOf(units).valueOf() < localInput.valueOf();
+ };
+ var isBetween = function isBetween(from, to, units, inclusivity) {
+ var localFrom = isMoment(from) ? from : createLocal(from), localTo = isMoment(to) ? to : createLocal(to);
+ if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) return false;
+ inclusivity = inclusivity || "()";
+ return (inclusivity[0] === "(" ? this.isAfter(localFrom, units) : !this.isBefore(localFrom, units)) && (inclusivity[1] === ")" ? this.isBefore(localTo, units) : !this.isAfter(localTo, units));
+ };
+ var isSame = function isSame(input, units) {
+ var localInput = isMoment(input) ? input : createLocal(input), inputMs;
+ if (!(this.isValid() && localInput.isValid())) return false;
+ units = normalizeUnits(units) || "millisecond";
+ if (units === "millisecond") return this.valueOf() === localInput.valueOf();
+ else {
+ inputMs = localInput.valueOf();
+ return this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf();
+ }
+ };
+ var isSameOrAfter = function isSameOrAfter(input, units) {
+ return this.isSame(input, units) || this.isAfter(input, units);
+ };
+ var isSameOrBefore = function isSameOrBefore(input, units) {
+ return this.isSame(input, units) || this.isBefore(input, units);
+ };
+ var diff1 = function diff1(input, units, asFloat) {
+ var that, zoneDelta, output;
+ if (!this.isValid()) return NaN;
+ that = cloneWithOffset(input, this);
+ if (!that.isValid()) return NaN;
+ zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;
+ units = normalizeUnits(units);
+ switch(units){
+ case "year":
+ output = monthDiff(this, that) / 12;
+ break;
+ case "month":
+ output = monthDiff(this, that);
+ break;
+ case "quarter":
+ output = monthDiff(this, that) / 3;
+ break;
+ case "second":
+ output = (this - that) / 1e3;
+ break; // 1000
+ case "minute":
+ output = (this - that) / 6e4;
+ break; // 1000 * 60
+ case "hour":
+ output = (this - that) / 36e5;
+ break; // 1000 * 60 * 60
+ case "day":
+ output = (this - that - zoneDelta) / 864e5;
+ break; // 1000 * 60 * 60 * 24, negate dst
+ case "week":
+ output = (this - that - zoneDelta) / 6048e5;
+ break; // 1000 * 60 * 60 * 24 * 7, negate dst
+ default:
+ output = this - that;
+ }
+ return asFloat ? output : absFloor(output);
+ };
+ var toString = function toString() {
+ return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ");
+ };
+ var toISOString = function toISOString(keepOffset) {
+ if (!this.isValid()) return null;
+ var utc = keepOffset !== true, m = utc ? this.clone().utc() : this;
+ if (m.year() < 0 || m.year() > 9999) return formatMoment(m, utc ? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ");
+ if (isFunction(Date.prototype.toISOString)) {
+ // native implementation is ~50x faster, use it when we can
+ if (utc) return this.toDate().toISOString();
+ else return new Date(this.valueOf() + this.utcOffset() * 60000).toISOString().replace("Z", formatMoment(m, "Z"));
+ }
+ return formatMoment(m, utc ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYY-MM-DD[T]HH:mm:ss.SSSZ");
+ };
+ var inspect = /**
+ * Return a human readable representation of a moment that can
+ * also be evaluated to get a new moment which is the same
+ *
+ * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects
+ */ function inspect() {
+ if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)";
+ var func = "moment", zone = "", prefix, year, datetime, suffix;
+ if (!this.isLocal()) {
+ func = this.utcOffset() === 0 ? "moment.utc" : "moment.parseZone";
+ zone = "Z";
+ }
+ prefix = "[" + func + '("]';
+ year = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY";
+ datetime = "-MM-DD[T]HH:mm:ss.SSS";
+ suffix = zone + '[")]';
+ return this.format(prefix + year + datetime + suffix);
+ };
+ var format1 = function format1(inputString) {
+ if (!inputString) inputString = this.isUtc() ? hooks.defaultFormatUtc : hooks.defaultFormat;
+ var output = formatMoment(this, inputString);
+ return this.localeData().postformat(output);
+ };
+ var from1 = function from1(time, withoutSuffix) {
+ if (this.isValid() && (isMoment(time) && time.isValid() || createLocal(time).isValid())) return createDuration({
+ to: this,
+ from: time
+ }).locale(this.locale()).humanize(!withoutSuffix);
+ else return this.localeData().invalidDate();
+ };
+ var fromNow = function fromNow(withoutSuffix) {
+ return this.from(createLocal(), withoutSuffix);
+ };
+ var to1 = function to1(time, withoutSuffix) {
+ if (this.isValid() && (isMoment(time) && time.isValid() || createLocal(time).isValid())) return createDuration({
+ from: this,
+ to: time
+ }).locale(this.locale()).humanize(!withoutSuffix);
+ else return this.localeData().invalidDate();
+ };
+ var toNow = function toNow(withoutSuffix) {
+ return this.to(createLocal(), withoutSuffix);
+ };
+ var locale1 = // If passed a locale key, it will set the locale for this
+ // instance. Otherwise, it will return the locale configuration
+ // variables for this instance.
+ function locale1(key) {
+ var newLocaleData;
+ if (key === undefined) return this._locale._abbr;
+ else {
+ newLocaleData = getLocale(key);
+ if (newLocaleData != null) this._locale = newLocaleData;
+ return this;
+ }
+ };
+ var localeData = function localeData() {
+ return this._locale;
+ };
+ var mod$1 = // actual modulo - handles negative numbers (for dates before 1970):
+ function mod$1(dividend, divisor) {
+ return (dividend % divisor + divisor) % divisor;
+ };
+ var localStartOfDate = function localStartOfDate(y, m, d) {
+ // the date constructor remaps years 0-99 to 1900-1999
+ if (y < 100 && y >= 0) // preserve leap years using a full 400 year cycle, then reset
+ return new Date(y + 400, m, d) - MS_PER_400_YEARS;
+ else return new Date(y, m, d).valueOf();
+ };
+ var utcStartOfDate = function utcStartOfDate(y, m, d) {
+ // Date.UTC remaps years 0-99 to 1900-1999
+ if (y < 100 && y >= 0) // preserve leap years using a full 400 year cycle, then reset
+ return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;
+ else return Date.UTC(y, m, d);
+ };
+ var startOf = function startOf(units) {
+ var time, startOfDate;
+ units = normalizeUnits(units);
+ if (units === undefined || units === "millisecond" || !this.isValid()) return this;
+ startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;
+ switch(units){
+ case "year":
+ time = startOfDate(this.year(), 0, 1);
+ break;
+ case "quarter":
+ time = startOfDate(this.year(), this.month() - this.month() % 3, 1);
+ break;
+ case "month":
+ time = startOfDate(this.year(), this.month(), 1);
+ break;
+ case "week":
+ time = startOfDate(this.year(), this.month(), this.date() - this.weekday());
+ break;
+ case "isoWeek":
+ time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1));
+ break;
+ case "day":
+ case "date":
+ time = startOfDate(this.year(), this.month(), this.date());
+ break;
+ case "hour":
+ time = this._d.valueOf();
+ time -= mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR);
+ break;
+ case "minute":
+ time = this._d.valueOf();
+ time -= mod$1(time, MS_PER_MINUTE);
+ break;
+ case "second":
+ time = this._d.valueOf();
+ time -= mod$1(time, MS_PER_SECOND);
+ break;
+ }
+ this._d.setTime(time);
+ hooks.updateOffset(this, true);
+ return this;
+ };
+ var endOf = function endOf(units) {
+ var time, startOfDate;
+ units = normalizeUnits(units);
+ if (units === undefined || units === "millisecond" || !this.isValid()) return this;
+ startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;
+ switch(units){
+ case "year":
+ time = startOfDate(this.year() + 1, 0, 1) - 1;
+ break;
+ case "quarter":
+ time = startOfDate(this.year(), this.month() - this.month() % 3 + 3, 1) - 1;
+ break;
+ case "month":
+ time = startOfDate(this.year(), this.month() + 1, 1) - 1;
+ break;
+ case "week":
+ time = startOfDate(this.year(), this.month(), this.date() - this.weekday() + 7) - 1;
+ break;
+ case "isoWeek":
+ time = startOfDate(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1;
+ break;
+ case "day":
+ case "date":
+ time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;
+ break;
+ case "hour":
+ time = this._d.valueOf();
+ time += MS_PER_HOUR - mod$1(time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), MS_PER_HOUR) - 1;
+ break;
+ case "minute":
+ time = this._d.valueOf();
+ time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;
+ break;
+ case "second":
+ time = this._d.valueOf();
+ time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;
+ break;
+ }
+ this._d.setTime(time);
+ hooks.updateOffset(this, true);
+ return this;
+ };
+ var valueOf = function valueOf() {
+ return this._d.valueOf() - (this._offset || 0) * 60000;
+ };
+ var unix = function unix() {
+ return Math.floor(this.valueOf() / 1000);
+ };
+ var toDate = function toDate() {
+ return new Date(this.valueOf());
+ };
+ var toArray = function toArray() {
+ var m = this;
+ return [
+ m.year(),
+ m.month(),
+ m.date(),
+ m.hour(),
+ m.minute(),
+ m.second(),
+ m.millisecond(),
+ ];
+ };
+ var toObject = function toObject() {
+ var m = this;
+ return {
+ years: m.year(),
+ months: m.month(),
+ date: m.date(),
+ hours: m.hours(),
+ minutes: m.minutes(),
+ seconds: m.seconds(),
+ milliseconds: m.milliseconds()
+ };
+ };
+ var toJSON = function toJSON() {
+ // new Date(NaN).toJSON() === null
+ return this.isValid() ? this.toISOString() : null;
+ };
+ var isValid$2 = function isValid$2() {
+ return isValid(this);
+ };
+ var parsingFlags = function parsingFlags() {
+ return extend({}, getParsingFlags(this));
+ };
+ var invalidAt = function invalidAt() {
+ return getParsingFlags(this).overflow;
+ };
+ var creationData = function creationData() {
+ return {
+ input: this._i,
+ format: this._f,
+ locale: this._locale,
+ isUTC: this._isUTC,
+ strict: this._strict
+ };
+ };
+ var localeEras = function localeEras(m, format) {
+ var i, l, date, eras = this._eras || getLocale("en")._eras;
+ for(i = 0, l = eras.length; i < l; ++i){
+ switch((0, $aS0o5.default)(eras[i].since)){
+ case "string":
+ // truncate time
+ date = hooks(eras[i].since).startOf("day");
+ eras[i].since = date.valueOf();
+ break;
+ }
+ switch((0, $aS0o5.default)(eras[i].until)){
+ case "undefined":
+ eras[i].until = Infinity;
+ break;
+ case "string":
+ // truncate time
+ date = hooks(eras[i].until).startOf("day").valueOf();
+ eras[i].until = date.valueOf();
+ break;
+ }
+ }
+ return eras;
+ };
+ var localeErasParse = function localeErasParse(eraName, format, strict) {
+ var i, l, eras = this.eras(), name, abbr, narrow;
+ eraName = eraName.toUpperCase();
+ for(i = 0, l = eras.length; i < l; ++i){
+ name = eras[i].name.toUpperCase();
+ abbr = eras[i].abbr.toUpperCase();
+ narrow = eras[i].narrow.toUpperCase();
+ if (strict) switch(format){
+ case "N":
+ case "NN":
+ case "NNN":
+ if (abbr === eraName) return eras[i];
+ break;
+ case "NNNN":
+ if (name === eraName) return eras[i];
+ break;
+ case "NNNNN":
+ if (narrow === eraName) return eras[i];
+ break;
+ }
+ else if ([
+ name,
+ abbr,
+ narrow
+ ].indexOf(eraName) >= 0) return eras[i];
+ }
+ };
+ var localeErasConvertYear = function localeErasConvertYear(era, year) {
+ var dir = era.since <= era.until ? 1 : -1;
+ if (year === undefined) return hooks(era.since).year();
+ else return hooks(era.since).year() + (year - era.offset) * dir;
+ };
+ var getEraName = function getEraName() {
+ var i, l, val, eras = this.localeData().eras();
+ for(i = 0, l = eras.length; i < l; ++i){
+ // truncate time
+ val = this.clone().startOf("day").valueOf();
+ if (eras[i].since <= val && val <= eras[i].until) return eras[i].name;
+ if (eras[i].until <= val && val <= eras[i].since) return eras[i].name;
+ }
+ return "";
+ };
+ var getEraNarrow = function getEraNarrow() {
+ var i, l, val, eras = this.localeData().eras();
+ for(i = 0, l = eras.length; i < l; ++i){
+ // truncate time
+ val = this.clone().startOf("day").valueOf();
+ if (eras[i].since <= val && val <= eras[i].until) return eras[i].narrow;
+ if (eras[i].until <= val && val <= eras[i].since) return eras[i].narrow;
+ }
+ return "";
+ };
+ var getEraAbbr = function getEraAbbr() {
+ var i, l, val, eras = this.localeData().eras();
+ for(i = 0, l = eras.length; i < l; ++i){
+ // truncate time
+ val = this.clone().startOf("day").valueOf();
+ if (eras[i].since <= val && val <= eras[i].until) return eras[i].abbr;
+ if (eras[i].until <= val && val <= eras[i].since) return eras[i].abbr;
+ }
+ return "";
+ };
+ var getEraYear = function getEraYear() {
+ var i, l, dir, val, eras = this.localeData().eras();
+ for(i = 0, l = eras.length; i < l; ++i){
+ dir = eras[i].since <= eras[i].until ? 1 : -1;
+ // truncate time
+ val = this.clone().startOf("day").valueOf();
+ if (eras[i].since <= val && val <= eras[i].until || eras[i].until <= val && val <= eras[i].since) return (this.year() - hooks(eras[i].since).year()) * dir + eras[i].offset;
+ }
+ return this.year();
+ };
+ var erasNameRegex = function erasNameRegex(isStrict) {
+ if (!hasOwnProp(this, "_erasNameRegex")) computeErasParse.call(this);
+ return isStrict ? this._erasNameRegex : this._erasRegex;
+ };
+ var erasAbbrRegex = function erasAbbrRegex(isStrict) {
+ if (!hasOwnProp(this, "_erasAbbrRegex")) computeErasParse.call(this);
+ return isStrict ? this._erasAbbrRegex : this._erasRegex;
+ };
+ var erasNarrowRegex = function erasNarrowRegex(isStrict) {
+ if (!hasOwnProp(this, "_erasNarrowRegex")) computeErasParse.call(this);
+ return isStrict ? this._erasNarrowRegex : this._erasRegex;
+ };
+ var matchEraAbbr = function matchEraAbbr(isStrict, locale) {
+ return locale.erasAbbrRegex(isStrict);
+ };
+ var matchEraName = function matchEraName(isStrict, locale) {
+ return locale.erasNameRegex(isStrict);
+ };
+ var matchEraNarrow = function matchEraNarrow(isStrict, locale) {
+ return locale.erasNarrowRegex(isStrict);
+ };
+ var matchEraYearOrdinal = function matchEraYearOrdinal(isStrict, locale) {
+ return locale._eraYearOrdinalRegex || matchUnsigned;
+ };
+ var computeErasParse = function computeErasParse() {
+ var abbrPieces = [], namePieces = [], narrowPieces = [], mixedPieces = [], i, l, eras = this.eras();
+ for(i = 0, l = eras.length; i < l; ++i){
+ namePieces.push(regexEscape(eras[i].name));
+ abbrPieces.push(regexEscape(eras[i].abbr));
+ narrowPieces.push(regexEscape(eras[i].narrow));
+ mixedPieces.push(regexEscape(eras[i].name));
+ mixedPieces.push(regexEscape(eras[i].abbr));
+ mixedPieces.push(regexEscape(eras[i].narrow));
+ }
+ this._erasRegex = new RegExp("^(" + mixedPieces.join("|") + ")", "i");
+ this._erasNameRegex = new RegExp("^(" + namePieces.join("|") + ")", "i");
+ this._erasAbbrRegex = new RegExp("^(" + abbrPieces.join("|") + ")", "i");
+ this._erasNarrowRegex = new RegExp("^(" + narrowPieces.join("|") + ")", "i");
+ };
+ var addWeekYearFormatToken = function addWeekYearFormatToken(token, getter) {
+ addFormatToken(0, [
+ token,
+ token.length
+ ], 0, getter);
+ };
+ var getSetWeekYear = // MOMENTS
+ function getSetWeekYear(input) {
+ return getSetWeekYearHelper.call(this, input, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy);
+ };
+ var getSetISOWeekYear = function getSetISOWeekYear(input) {
+ return getSetWeekYearHelper.call(this, input, this.isoWeek(), this.isoWeekday(), 1, 4);
+ };
+ var getISOWeeksInYear = function getISOWeeksInYear() {
+ return weeksInYear(this.year(), 1, 4);
+ };
+ var getISOWeeksInISOWeekYear = function getISOWeeksInISOWeekYear() {
+ return weeksInYear(this.isoWeekYear(), 1, 4);
+ };
+ var getWeeksInYear = function getWeeksInYear() {
+ var weekInfo = this.localeData()._week;
+ return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);
+ };
+ var getWeeksInWeekYear = function getWeeksInWeekYear() {
+ var weekInfo = this.localeData()._week;
+ return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);
+ };
+ var getSetWeekYearHelper = function getSetWeekYearHelper(input, week, weekday, dow, doy) {
+ var weeksTarget;
+ if (input == null) return weekOfYear(this, dow, doy).year;
+ else {
+ weeksTarget = weeksInYear(input, dow, doy);
+ if (week > weeksTarget) week = weeksTarget;
+ return setWeekAll.call(this, input, week, weekday, dow, doy);
+ }
+ };
+ var setWeekAll = function setWeekAll(weekYear, week, weekday, dow, doy) {
+ var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);
+ this.year(date.getUTCFullYear());
+ this.month(date.getUTCMonth());
+ this.date(date.getUTCDate());
+ return this;
+ };
+ var getSetQuarter = // MOMENTS
+ function getSetQuarter(input) {
+ return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);
+ };
+ var getSetDayOfYear = // HELPERS
+ // MOMENTS
+ function getSetDayOfYear(input) {
+ var dayOfYear = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1;
+ return input == null ? dayOfYear : this.add(input - dayOfYear, "d");
+ };
+ var parseMs = function parseMs(input, array) {
+ array[MILLISECOND] = toInt(("0." + input) * 1000);
+ };
+ var getZoneAbbr = // MOMENTS
+ function getZoneAbbr() {
+ return this._isUTC ? "UTC" : "";
+ };
+ var getZoneName = function getZoneName() {
+ return this._isUTC ? "Coordinated Universal Time" : "";
+ };
+ var createUnix = function createUnix(input) {
+ return createLocal(input * 1000);
+ };
+ var createInZone = function createInZone() {
+ return createLocal.apply(null, arguments).parseZone();
+ };
+ var preParsePostFormat = function preParsePostFormat(string) {
+ return string;
+ };
+ var get$1 = function get$1(format, index, field, setter) {
+ var locale = getLocale(), utc = createUTC().set(setter, index);
+ return locale[field](utc, format);
+ };
+ var listMonthsImpl = function listMonthsImpl(format, index, field) {
+ if (isNumber(format)) {
+ index = format;
+ format = undefined;
+ }
+ format = format || "";
+ if (index != null) return get$1(format, index, field, "month");
+ var i, out = [];
+ for(i = 0; i < 12; i++)out[i] = get$1(format, i, field, "month");
+ return out;
+ };
+ var listWeekdaysImpl = // ()
+ // (5)
+ // (fmt, 5)
+ // (fmt)
+ // (true)
+ // (true, 5)
+ // (true, fmt, 5)
+ // (true, fmt)
+ function listWeekdaysImpl(localeSorted, format, index, field) {
+ if (typeof localeSorted === "boolean") {
+ if (isNumber(format)) {
+ index = format;
+ format = undefined;
+ }
+ format = format || "";
+ } else {
+ format = localeSorted;
+ index = format;
+ localeSorted = false;
+ if (isNumber(format)) {
+ index = format;
+ format = undefined;
+ }
+ format = format || "";
+ }
+ var locale = getLocale(), shift = localeSorted ? locale._week.dow : 0, i, out = [];
+ if (index != null) return get$1(format, (index + shift) % 7, field, "day");
+ for(i = 0; i < 7; i++)out[i] = get$1(format, (i + shift) % 7, field, "day");
+ return out;
+ };
+ var listMonths = function listMonths(format, index) {
+ return listMonthsImpl(format, index, "months");
+ };
+ var listMonthsShort = function listMonthsShort(format, index) {
+ return listMonthsImpl(format, index, "monthsShort");
+ };
+ var listWeekdays = function listWeekdays(localeSorted, format, index) {
+ return listWeekdaysImpl(localeSorted, format, index, "weekdays");
+ };
+ var listWeekdaysShort = function listWeekdaysShort(localeSorted, format, index) {
+ return listWeekdaysImpl(localeSorted, format, index, "weekdaysShort");
+ };
+ var listWeekdaysMin = function listWeekdaysMin(localeSorted, format, index) {
+ return listWeekdaysImpl(localeSorted, format, index, "weekdaysMin");
+ };
+ var abs = function abs() {
+ var data = this._data;
+ this._milliseconds = mathAbs(this._milliseconds);
+ this._days = mathAbs(this._days);
+ this._months = mathAbs(this._months);
+ data.milliseconds = mathAbs(data.milliseconds);
+ data.seconds = mathAbs(data.seconds);
+ data.minutes = mathAbs(data.minutes);
+ data.hours = mathAbs(data.hours);
+ data.months = mathAbs(data.months);
+ data.years = mathAbs(data.years);
+ return this;
+ };
+ var addSubtract$1 = function addSubtract$1(duration, input, value, direction) {
+ var other = createDuration(input, value);
+ duration._milliseconds += direction * other._milliseconds;
+ duration._days += direction * other._days;
+ duration._months += direction * other._months;
+ return duration._bubble();
+ };
+ var add$1 = // supports only 2.0-style add(1, 's') or add(duration)
+ function add$1(input, value) {
+ return addSubtract$1(this, input, value, 1);
+ };
+ var subtract$1 = // supports only 2.0-style subtract(1, 's') or subtract(duration)
+ function subtract$1(input, value) {
+ return addSubtract$1(this, input, value, -1);
+ };
+ var absCeil = function absCeil(number) {
+ if (number < 0) return Math.floor(number);
+ else return Math.ceil(number);
+ };
+ var bubble = function bubble() {
+ var milliseconds = this._milliseconds, days = this._days, months = this._months, data = this._data, seconds, minutes, hours, years, monthsFromDays;
+ // if we have a mix of positive and negative values, bubble down first
+ // check: https://github.com/moment/moment/issues/2166
+ if (!(milliseconds >= 0 && days >= 0 && months >= 0 || milliseconds <= 0 && days <= 0 && months <= 0)) {
+ milliseconds += absCeil(monthsToDays(months) + days) * 864e5;
+ days = 0;
+ months = 0;
+ }
+ // The following code bubbles up values, see the tests for
+ // examples of what that means.
+ data.milliseconds = milliseconds % 1000;
+ seconds = absFloor(milliseconds / 1000);
+ data.seconds = seconds % 60;
+ minutes = absFloor(seconds / 60);
+ data.minutes = minutes % 60;
+ hours = absFloor(minutes / 60);
+ data.hours = hours % 24;
+ days += absFloor(hours / 24);
+ // convert days to months
+ monthsFromDays = absFloor(daysToMonths(days));
+ months += monthsFromDays;
+ days -= absCeil(monthsToDays(monthsFromDays));
+ // 12 months -> 1 year
+ years = absFloor(months / 12);
+ months %= 12;
+ data.days = days;
+ data.months = months;
+ data.years = years;
+ return this;
+ };
+ var daysToMonths = function daysToMonths(days) {
+ // 400 years have 146097 days (taking into account leap year rules)
+ // 400 years have 12 months === 4800
+ return days * 4800 / 146097;
+ };
+ var monthsToDays = function monthsToDays(months) {
+ // the reverse of daysToMonths
+ return months * 146097 / 4800;
+ };
+ var as = function as(units) {
+ if (!this.isValid()) return NaN;
+ var days, months, milliseconds = this._milliseconds;
+ units = normalizeUnits(units);
+ if (units === "month" || units === "quarter" || units === "year") {
+ days = this._days + milliseconds / 864e5;
+ months = this._months + daysToMonths(days);
+ switch(units){
+ case "month":
+ return months;
+ case "quarter":
+ return months / 3;
+ case "year":
+ return months / 12;
+ }
+ } else {
+ // handle milliseconds separately because of floating point math errors (issue #1867)
+ days = this._days + Math.round(monthsToDays(this._months));
+ switch(units){
+ case "week":
+ return days / 7 + milliseconds / 6048e5;
+ case "day":
+ return days + milliseconds / 864e5;
+ case "hour":
+ return days * 24 + milliseconds / 36e5;
+ case "minute":
+ return days * 1440 + milliseconds / 6e4;
+ case "second":
+ return days * 86400 + milliseconds / 1000;
+ // Math.floor prevents floating point math errors here
+ case "millisecond":
+ return Math.floor(days * 864e5) + milliseconds;
+ default:
+ throw new Error("Unknown unit " + units);
+ }
+ }
+ };
+ var valueOf$1 = // TODO: Use this.as('ms')?
+ function valueOf$1() {
+ if (!this.isValid()) return NaN;
+ return this._milliseconds + this._days * 864e5 + this._months % 12 * 2592e6 + toInt(this._months / 12) * 31536e6;
+ };
+ var makeAs = function makeAs(alias) {
+ return function() {
+ return this.as(alias);
+ };
+ };
+ var clone$1 = function clone$1() {
+ return createDuration(this);
+ };
+ var get$2 = function get$2(units) {
+ units = normalizeUnits(units);
+ return this.isValid() ? this[units + "s"]() : NaN;
+ };
+ var makeGetter = function makeGetter(name) {
+ return function() {
+ return this.isValid() ? this._data[name] : NaN;
+ };
+ };
+ var weeks1 = function weeks1() {
+ return absFloor(this.days() / 7);
+ };
+ var substituteTimeAgo = // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize
+ function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {
+ return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);
+ };
+ var relativeTime$1 = function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {
+ var duration = createDuration(posNegDuration).abs(), seconds = round(duration.as("s")), minutes = round(duration.as("m")), hours = round(duration.as("h")), days = round(duration.as("d")), months = round(duration.as("M")), weeks = round(duration.as("w")), years = round(duration.as("y")), a = seconds <= thresholds.ss && [
+ "s",
+ seconds
+ ] || seconds < thresholds.s && [
+ "ss",
+ seconds
+ ] || minutes <= 1 && [
+ "m"
+ ] || minutes < thresholds.m && [
+ "mm",
+ minutes
+ ] || hours <= 1 && [
+ "h"
+ ] || hours < thresholds.h && [
+ "hh",
+ hours
+ ] || days <= 1 && [
+ "d"
+ ] || days < thresholds.d && [
+ "dd",
+ days
+ ];
+ if (thresholds.w != null) a = a || weeks <= 1 && [
+ "w"
+ ] || weeks < thresholds.w && [
+ "ww",
+ weeks
+ ];
+ a = a || months <= 1 && [
+ "M"
+ ] || months < thresholds.M && [
+ "MM",
+ months
+ ] || years <= 1 && [
+ "y"
+ ] || [
+ "yy",
+ years
+ ];
+ a[2] = withoutSuffix;
+ a[3] = +posNegDuration > 0;
+ a[4] = locale;
+ return substituteTimeAgo.apply(null, a);
+ };
+ var getSetRelativeTimeRounding = // This function allows you to set the rounding function for relative time strings
+ function getSetRelativeTimeRounding(roundingFunction) {
+ if (roundingFunction === undefined) return round;
+ if (typeof roundingFunction === "function") {
+ round = roundingFunction;
+ return true;
+ }
+ return false;
+ };
+ var getSetRelativeTimeThreshold = // This function allows you to set a threshold for relative time strings
+ function getSetRelativeTimeThreshold(threshold, limit) {
+ if (thresholds1[threshold] === undefined) return false;
+ if (limit === undefined) return thresholds1[threshold];
+ thresholds1[threshold] = limit;
+ if (threshold === "s") thresholds1.ss = limit - 1;
+ return true;
+ };
+ var humanize = function humanize(argWithSuffix, argThresholds) {
+ if (!this.isValid()) return this.localeData().invalidDate();
+ var withSuffix = false, th = thresholds1, locale, output;
+ if (typeof argWithSuffix === "object") {
+ argThresholds = argWithSuffix;
+ argWithSuffix = false;
+ }
+ if (typeof argWithSuffix === "boolean") withSuffix = argWithSuffix;
+ if (typeof argThresholds === "object") {
+ th = Object.assign({}, thresholds1, argThresholds);
+ if (argThresholds.s != null && argThresholds.ss == null) th.ss = argThresholds.s - 1;
+ }
+ locale = this.localeData();
+ output = relativeTime$1(this, !withSuffix, th, locale);
+ if (withSuffix) output = locale.pastFuture(+this, output);
+ return locale.postformat(output);
+ };
+ var sign1 = function sign1(x) {
+ return (x > 0) - (x < 0) || +x;
+ };
+ var toISOString$1 = function toISOString$1() {
+ // for ISO strings we do not use the normal bubbling rules:
+ // * milliseconds bubble up until they become hours
+ // * days do not bubble at all
+ // * months bubble up until they become years
+ // This is because there is no context-free conversion between hours and days
+ // (think of clock changes)
+ // and also not between days and months (28-31 days per month)
+ if (!this.isValid()) return this.localeData().invalidDate();
+ var seconds = abs$1(this._milliseconds) / 1000, days = abs$1(this._days), months = abs$1(this._months), minutes, hours, years, s, total = this.asSeconds(), totalSign, ymSign, daysSign, hmsSign;
+ if (!total) // this is the same as C#'s (Noda) and python (isodate)...
+ // but not other JS (goog.date)
+ return "P0D";
+ // 3600 seconds -> 60 minutes -> 1 hour
+ minutes = absFloor(seconds / 60);
+ hours = absFloor(minutes / 60);
+ seconds %= 60;
+ minutes %= 60;
+ // 12 months -> 1 year
+ years = absFloor(months / 12);
+ months %= 12;
+ // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js
+ s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, "") : "";
+ totalSign = total < 0 ? "-" : "";
+ ymSign = sign1(this._months) !== sign1(total) ? "-" : "";
+ daysSign = sign1(this._days) !== sign1(total) ? "-" : "";
+ hmsSign = sign1(this._milliseconds) !== sign1(total) ? "-" : "";
+ return totalSign + "P" + (years ? ymSign + years + "Y" : "") + (months ? ymSign + months + "M" : "") + (days ? daysSign + days + "D" : "") + (hours || minutes || seconds ? "T" : "") + (hours ? hmsSign + hours + "H" : "") + (minutes ? hmsSign + minutes + "M" : "") + (seconds ? hmsSign + s + "S" : "");
+ };
+ var hookCallback;
+ var some;
+ if (Array.prototype.some) some = Array.prototype.some;
+ else some = function some(fun) {
+ var t = Object(this), len = t.length >>> 0, i;
+ for(i = 0; i < len; i++){
+ if (i in t && fun.call(this, t[i], i, t)) return true;
+ }
+ return false;
+ };
+ // Plugins that add properties should also add the key here (null value),
+ // so we can properly clone ourselves.
+ var momentProperties = hooks.momentProperties = [], updateInProgress = false;
+ var deprecations = {};
+ hooks.suppressDeprecationWarnings = false;
+ hooks.deprecationHandler = null;
+ var keys;
+ if (Object.keys) keys = Object.keys;
+ else keys = function keys(obj) {
+ var i, res = [];
+ for(i in obj)if (hasOwnProp(obj, i)) res.push(i);
+ return res;
+ };
+ var defaultCalendar = {
+ sameDay: "[Today at] LT",
+ nextDay: "[Tomorrow at] LT",
+ nextWeek: "dddd [at] LT",
+ lastDay: "[Yesterday at] LT",
+ lastWeek: "[Last] dddd [at] LT",
+ sameElse: "L"
+ };
+ var formattingTokens = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, formatFunctions = {}, formatTokenFunctions = {};
+ var defaultLongDateFormat = {
+ LTS: "h:mm:ss A",
+ LT: "h:mm A",
+ L: "MM/DD/YYYY",
+ LL: "MMMM D, YYYY",
+ LLL: "MMMM D, YYYY h:mm A",
+ LLLL: "dddd, MMMM D, YYYY h:mm A"
+ };
+ var defaultInvalidDate = "Invalid date";
+ var defaultOrdinal = "%d", defaultDayOfMonthOrdinalParse = /\d{1,2}/;
+ var defaultRelativeTime = {
+ future: "in %s",
+ past: "%s ago",
+ s: "a few seconds",
+ ss: "%d seconds",
+ m: "a minute",
+ mm: "%d minutes",
+ h: "an hour",
+ hh: "%d hours",
+ d: "a day",
+ dd: "%d days",
+ w: "a week",
+ ww: "%d weeks",
+ M: "a month",
+ MM: "%d months",
+ y: "a year",
+ yy: "%d years"
+ };
+ var aliases = {};
+ var priorities = {};
+ var match1 = /\d/, match2 = /\d\d/, match3 = /\d{3}/, match4 = /\d{4}/, match6 = /[+-]?\d{6}/, match1to2 = /\d\d?/, match3to4 = /\d\d\d\d?/, match5to6 = /\d\d\d\d\d\d?/, match1to3 = /\d{1,3}/, match1to4 = /\d{1,4}/, match1to6 = /[+-]?\d{1,6}/, matchUnsigned = /\d+/, matchSigned = /[+-]?\d+/, matchOffset = /Z|[+-]\d\d:?\d\d/gi, matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, // any word (or two) characters or numbers including two/three word month in arabic.
+ // includes scottish gaelic two word and hyphenated months
+ matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i, regexes;
+ regexes = {};
+ var tokens1 = {};
+ var YEAR = 0, MONTH = 1, DATE = 2, HOUR = 3, MINUTE = 4, SECOND = 5, MILLISECOND = 6, WEEK = 7, WEEKDAY = 8;
+ var indexOf;
+ if (Array.prototype.indexOf) indexOf = Array.prototype.indexOf;
+ else indexOf = function indexOf(o) {
+ // I know
+ var i;
+ for(i = 0; i < this.length; ++i){
+ if (this[i] === o) return i;
+ }
+ return -1;
+ };
+ // FORMATTING
+ addFormatToken("M", [
+ "MM",
+ 2
+ ], "Mo", function() {
+ return this.month() + 1;
+ });
+ addFormatToken("MMM", 0, 0, function(format) {
+ return this.localeData().monthsShort(this, format);
+ });
+ addFormatToken("MMMM", 0, 0, function(format) {
+ return this.localeData().months(this, format);
+ });
+ // ALIASES
+ addUnitAlias("month", "M");
+ // PRIORITY
+ addUnitPriority("month", 8);
+ // PARSING
+ addRegexToken("M", match1to2);
+ addRegexToken("MM", match1to2, match2);
+ addRegexToken("MMM", function(isStrict, locale) {
+ return locale.monthsShortRegex(isStrict);
+ });
+ addRegexToken("MMMM", function(isStrict, locale) {
+ return locale.monthsRegex(isStrict);
+ });
+ addParseToken([
+ "M",
+ "MM"
+ ], function(input, array) {
+ array[MONTH] = toInt(input) - 1;
+ });
+ addParseToken([
+ "MMM",
+ "MMMM"
+ ], function(input, array, config, token) {
+ var month = config._locale.monthsParse(input, token, config._strict);
+ // if we didn't find a month name, mark the date as invalid.
+ if (month != null) array[MONTH] = month;
+ else getParsingFlags(config).invalidMonth = input;
+ });
+ // LOCALES
+ var defaultLocaleMonths = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), defaultLocaleMonthsShort = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, defaultMonthsShortRegex = matchWord, defaultMonthsRegex = matchWord;
+ // FORMATTING
+ addFormatToken("Y", 0, 0, function() {
+ var y = this.year();
+ return y <= 9999 ? zeroFill(y, 4) : "+" + y;
+ });
+ addFormatToken(0, [
+ "YY",
+ 2
+ ], 0, function() {
+ return this.year() % 100;
+ });
+ addFormatToken(0, [
+ "YYYY",
+ 4
+ ], 0, "year");
+ addFormatToken(0, [
+ "YYYYY",
+ 5
+ ], 0, "year");
+ addFormatToken(0, [
+ "YYYYYY",
+ 6,
+ true
+ ], 0, "year");
+ // ALIASES
+ addUnitAlias("year", "y");
+ // PRIORITIES
+ addUnitPriority("year", 1);
+ // PARSING
+ addRegexToken("Y", matchSigned);
+ addRegexToken("YY", match1to2, match2);
+ addRegexToken("YYYY", match1to4, match4);
+ addRegexToken("YYYYY", match1to6, match6);
+ addRegexToken("YYYYYY", match1to6, match6);
+ addParseToken([
+ "YYYYY",
+ "YYYYYY"
+ ], YEAR);
+ addParseToken("YYYY", function(input, array) {
+ array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);
+ });
+ addParseToken("YY", function(input, array) {
+ array[YEAR] = hooks.parseTwoDigitYear(input);
+ });
+ addParseToken("Y", function(input, array) {
+ array[YEAR] = parseInt(input, 10);
+ });
+ // HOOKS
+ hooks.parseTwoDigitYear = function(input) {
+ return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
+ };
+ // MOMENTS
+ var getSetYear = makeGetSet("FullYear", true);
+ // FORMATTING
+ addFormatToken("w", [
+ "ww",
+ 2
+ ], "wo", "week");
+ addFormatToken("W", [
+ "WW",
+ 2
+ ], "Wo", "isoWeek");
+ // ALIASES
+ addUnitAlias("week", "w");
+ addUnitAlias("isoWeek", "W");
+ // PRIORITIES
+ addUnitPriority("week", 5);
+ addUnitPriority("isoWeek", 5);
+ // PARSING
+ addRegexToken("w", match1to2);
+ addRegexToken("ww", match1to2, match2);
+ addRegexToken("W", match1to2);
+ addRegexToken("WW", match1to2, match2);
+ addWeekParseToken([
+ "w",
+ "ww",
+ "W",
+ "WW"
+ ], function(input, week, config, token) {
+ week[token.substr(0, 1)] = toInt(input);
+ });
+ var defaultLocaleWeek = {
+ dow: 0,
+ doy: 6
+ };
+ // FORMATTING
+ addFormatToken("d", 0, "do", "day");
+ addFormatToken("dd", 0, 0, function(format) {
+ return this.localeData().weekdaysMin(this, format);
+ });
+ addFormatToken("ddd", 0, 0, function(format) {
+ return this.localeData().weekdaysShort(this, format);
+ });
+ addFormatToken("dddd", 0, 0, function(format) {
+ return this.localeData().weekdays(this, format);
+ });
+ addFormatToken("e", 0, 0, "weekday");
+ addFormatToken("E", 0, 0, "isoWeekday");
+ // ALIASES
+ addUnitAlias("day", "d");
+ addUnitAlias("weekday", "e");
+ addUnitAlias("isoWeekday", "E");
+ // PRIORITY
+ addUnitPriority("day", 11);
+ addUnitPriority("weekday", 11);
+ addUnitPriority("isoWeekday", 11);
+ // PARSING
+ addRegexToken("d", match1to2);
+ addRegexToken("e", match1to2);
+ addRegexToken("E", match1to2);
+ addRegexToken("dd", function(isStrict, locale) {
+ return locale.weekdaysMinRegex(isStrict);
+ });
+ addRegexToken("ddd", function(isStrict, locale) {
+ return locale.weekdaysShortRegex(isStrict);
+ });
+ addRegexToken("dddd", function(isStrict, locale) {
+ return locale.weekdaysRegex(isStrict);
+ });
+ addWeekParseToken([
+ "dd",
+ "ddd",
+ "dddd"
+ ], function(input, week, config, token) {
+ var weekday = config._locale.weekdaysParse(input, token, config._strict);
+ // if we didn't get a weekday name, mark the date as invalid
+ if (weekday != null) week.d = weekday;
+ else getParsingFlags(config).invalidWeekday = input;
+ });
+ addWeekParseToken([
+ "d",
+ "e",
+ "E"
+ ], function(input, week, config, token) {
+ week[token] = toInt(input);
+ });
+ var defaultLocaleWeekdays = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), defaultLocaleWeekdaysShort = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), defaultLocaleWeekdaysMin = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), defaultWeekdaysRegex = matchWord, defaultWeekdaysShortRegex = matchWord, defaultWeekdaysMinRegex = matchWord;
+ addFormatToken("H", [
+ "HH",
+ 2
+ ], 0, "hour");
+ addFormatToken("h", [
+ "hh",
+ 2
+ ], 0, hFormat);
+ addFormatToken("k", [
+ "kk",
+ 2
+ ], 0, kFormat);
+ addFormatToken("hmm", 0, 0, function() {
+ return "" + hFormat.apply(this) + zeroFill(this.minutes(), 2);
+ });
+ addFormatToken("hmmss", 0, 0, function() {
+ return "" + hFormat.apply(this) + zeroFill(this.minutes(), 2) + zeroFill(this.seconds(), 2);
+ });
+ addFormatToken("Hmm", 0, 0, function() {
+ return "" + this.hours() + zeroFill(this.minutes(), 2);
+ });
+ addFormatToken("Hmmss", 0, 0, function() {
+ return "" + this.hours() + zeroFill(this.minutes(), 2) + zeroFill(this.seconds(), 2);
+ });
+ meridiem1("a", true);
+ meridiem1("A", false);
+ // ALIASES
+ addUnitAlias("hour", "h");
+ // PRIORITY
+ addUnitPriority("hour", 13);
+ addRegexToken("a", matchMeridiem);
+ addRegexToken("A", matchMeridiem);
+ addRegexToken("H", match1to2);
+ addRegexToken("h", match1to2);
+ addRegexToken("k", match1to2);
+ addRegexToken("HH", match1to2, match2);
+ addRegexToken("hh", match1to2, match2);
+ addRegexToken("kk", match1to2, match2);
+ addRegexToken("hmm", match3to4);
+ addRegexToken("hmmss", match5to6);
+ addRegexToken("Hmm", match3to4);
+ addRegexToken("Hmmss", match5to6);
+ addParseToken([
+ "H",
+ "HH"
+ ], HOUR);
+ addParseToken([
+ "k",
+ "kk"
+ ], function(input, array, config) {
+ var kInput = toInt(input);
+ array[HOUR] = kInput === 24 ? 0 : kInput;
+ });
+ addParseToken([
+ "a",
+ "A"
+ ], function(input, array, config) {
+ config._isPm = config._locale.isPM(input);
+ config._meridiem = input;
+ });
+ addParseToken([
+ "h",
+ "hh"
+ ], function(input, array, config) {
+ array[HOUR] = toInt(input);
+ getParsingFlags(config).bigHour = true;
+ });
+ addParseToken("hmm", function(input, array, config) {
+ var pos = input.length - 2;
+ array[HOUR] = toInt(input.substr(0, pos));
+ array[MINUTE] = toInt(input.substr(pos));
+ getParsingFlags(config).bigHour = true;
+ });
+ addParseToken("hmmss", function(input, array, config) {
+ var pos1 = input.length - 4, pos2 = input.length - 2;
+ array[HOUR] = toInt(input.substr(0, pos1));
+ array[MINUTE] = toInt(input.substr(pos1, 2));
+ array[SECOND] = toInt(input.substr(pos2));
+ getParsingFlags(config).bigHour = true;
+ });
+ addParseToken("Hmm", function(input, array, config) {
+ var pos = input.length - 2;
+ array[HOUR] = toInt(input.substr(0, pos));
+ array[MINUTE] = toInt(input.substr(pos));
+ });
+ addParseToken("Hmmss", function(input, array, config) {
+ var pos1 = input.length - 4, pos2 = input.length - 2;
+ array[HOUR] = toInt(input.substr(0, pos1));
+ array[MINUTE] = toInt(input.substr(pos1, 2));
+ array[SECOND] = toInt(input.substr(pos2));
+ });
+ var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i, // Setting the hour should keep the time, because the user explicitly
+ // specified which hour they want. So trying to maintain the same hour (in
+ // a new timezone) makes sense. Adding/subtracting hours does not follow
+ // this rule.
+ getSetHour = makeGetSet("Hours", true);
+ var baseConfig = {
+ calendar: defaultCalendar,
+ longDateFormat: defaultLongDateFormat,
+ invalidDate: defaultInvalidDate,
+ ordinal: defaultOrdinal,
+ dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,
+ relativeTime: defaultRelativeTime,
+ months: defaultLocaleMonths,
+ monthsShort: defaultLocaleMonthsShort,
+ week: defaultLocaleWeek,
+ weekdays: defaultLocaleWeekdays,
+ weekdaysMin: defaultLocaleWeekdaysMin,
+ weekdaysShort: defaultLocaleWeekdaysShort,
+ meridiemParse: defaultLocaleMeridiemParse
+ };
+ // internal storage for locale config files
+ var locales = {}, localeFamilies = {}, globalLocale;
+ function defineLocale(name, config) {
+ if (config !== null) {
+ var locale, parentConfig = baseConfig;
+ config.abbr = name;
+ if (locales[name] != null) {
+ deprecateSimple("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.");
+ parentConfig = locales[name]._config;
+ } else if (config.parentLocale != null) {
+ if (locales[config.parentLocale] != null) parentConfig = locales[config.parentLocale]._config;
+ else {
+ locale = loadLocale(config.parentLocale);
+ if (locale != null) parentConfig = locale._config;
+ else {
+ if (!localeFamilies[config.parentLocale]) localeFamilies[config.parentLocale] = [];
+ localeFamilies[config.parentLocale].push({
+ name: name,
+ config: config
+ });
+ return null;
+ }
+ }
+ }
+ locales[name] = new Locale(mergeConfigs(parentConfig, config));
+ if (localeFamilies[name]) localeFamilies[name].forEach(function(x) {
+ defineLocale(x.name, x.config);
+ });
+ // backwards compat for now: also set the locale
+ // make sure we set the locale AFTER all child locales have been
+ // created, so we won't end up with the child locale set.
+ getSetGlobalLocale(name);
+ return locales[name];
+ } else {
+ // useful for testing
+ delete locales[name];
+ return null;
+ }
+ }
+ // iso 8601 regex
+ // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
+ var extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, tzRegex = /Z|[+-]\d\d(?::?\d\d)?/, isoDates = [
+ [
+ "YYYYYY-MM-DD",
+ /[+-]\d{6}-\d\d-\d\d/
+ ],
+ [
+ "YYYY-MM-DD",
+ /\d{4}-\d\d-\d\d/
+ ],
+ [
+ "GGGG-[W]WW-E",
+ /\d{4}-W\d\d-\d/
+ ],
+ [
+ "GGGG-[W]WW",
+ /\d{4}-W\d\d/,
+ false
+ ],
+ [
+ "YYYY-DDD",
+ /\d{4}-\d{3}/
+ ],
+ [
+ "YYYY-MM",
+ /\d{4}-\d\d/,
+ false
+ ],
+ [
+ "YYYYYYMMDD",
+ /[+-]\d{10}/
+ ],
+ [
+ "YYYYMMDD",
+ /\d{8}/
+ ],
+ [
+ "GGGG[W]WWE",
+ /\d{4}W\d{3}/
+ ],
+ [
+ "GGGG[W]WW",
+ /\d{4}W\d{2}/,
+ false
+ ],
+ [
+ "YYYYDDD",
+ /\d{7}/
+ ],
+ [
+ "YYYYMM",
+ /\d{6}/,
+ false
+ ],
+ [
+ "YYYY",
+ /\d{4}/,
+ false
+ ],
+ ], // iso time formats and regexes
+ isoTimes = [
+ [
+ "HH:mm:ss.SSSS",
+ /\d\d:\d\d:\d\d\.\d+/
+ ],
+ [
+ "HH:mm:ss,SSSS",
+ /\d\d:\d\d:\d\d,\d+/
+ ],
+ [
+ "HH:mm:ss",
+ /\d\d:\d\d:\d\d/
+ ],
+ [
+ "HH:mm",
+ /\d\d:\d\d/
+ ],
+ [
+ "HHmmss.SSSS",
+ /\d\d\d\d\d\d\.\d+/
+ ],
+ [
+ "HHmmss,SSSS",
+ /\d\d\d\d\d\d,\d+/
+ ],
+ [
+ "HHmmss",
+ /\d\d\d\d\d\d/
+ ],
+ [
+ "HHmm",
+ /\d\d\d\d/
+ ],
+ [
+ "HH",
+ /\d\d/
+ ],
+ ], aspNetJsonRegex = /^\/?Date\((-?\d+)/i, // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3
+ rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/, obsOffsets = {
+ UT: 0,
+ GMT: 0,
+ EDT: -240,
+ EST: -300,
+ CDT: -300,
+ CST: -360,
+ MDT: -360,
+ MST: -420,
+ PDT: -420,
+ PST: -480
+ };
+ hooks.createFromInputFallback = deprecate("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function(config) {
+ config._d = new Date(config._i + (config._useUTC ? " UTC" : ""));
+ });
+ // constant that refers to the ISO standard
+ hooks.ISO_8601 = function() {};
+ // constant that refers to the RFC 2822 form
+ hooks.RFC_2822 = function() {};
+ var prototypeMin = deprecate("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function() {
+ var other = createLocal.apply(null, arguments);
+ if (this.isValid() && other.isValid()) return other < this ? this : other;
+ else return createInvalid();
+ }), prototypeMax = deprecate("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function() {
+ var other = createLocal.apply(null, arguments);
+ if (this.isValid() && other.isValid()) return other > this ? this : other;
+ else return createInvalid();
+ });
+ var now1 = function now1() {
+ return Date.now ? Date.now() : +new Date();
+ };
+ var ordering = [
+ "year",
+ "quarter",
+ "month",
+ "week",
+ "day",
+ "hour",
+ "minute",
+ "second",
+ "millisecond",
+ ];
+ offset1("Z", ":");
+ offset1("ZZ", "");
+ // PARSING
+ addRegexToken("Z", matchShortOffset);
+ addRegexToken("ZZ", matchShortOffset);
+ addParseToken([
+ "Z",
+ "ZZ"
+ ], function(input, array, config) {
+ config._useUTC = true;
+ config._tzm = offsetFromString(matchShortOffset, input);
+ });
+ // HELPERS
+ // timezone chunker
+ // '+10:00' > ['10', '00']
+ // '-1530' > ['-15', '30']
+ var chunkOffset = /([\+\-]|\d\d)/gi;
+ // HOOKS
+ // This function will be called whenever a moment is mutated.
+ // It is intended to keep the offset in sync with the timezone.
+ hooks.updateOffset = function() {};
+ // ASP.NET json date format regex
+ var aspNetRegex = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/, // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
+ // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
+ // and further modified to allow for strings containing both week and day
+ isoRegex = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;
+ createDuration.fn = Duration.prototype;
+ createDuration.invalid = createInvalid$1;
+ var add = createAdder(1, "add"), subtract = createAdder(-1, "subtract");
+ function monthDiff(a, b) {
+ if (a.date() < b.date()) // end-of-month calculations work correct when the start month has more
+ // days than the end month.
+ return -monthDiff(b, a);
+ // difference in months
+ var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()), // b is in (anchor - 1 month, anchor + 1 month)
+ anchor = a.clone().add(wholeMonthDiff, "months"), anchor2, adjust;
+ if (b - anchor < 0) {
+ anchor2 = a.clone().add(wholeMonthDiff - 1, "months");
+ // linear across the month
+ adjust = (b - anchor) / (anchor - anchor2);
+ } else {
+ anchor2 = a.clone().add(wholeMonthDiff + 1, "months");
+ // linear across the month
+ adjust = (b - anchor) / (anchor2 - anchor);
+ }
+ //check for negative zero, return zero if negative zero
+ return -(wholeMonthDiff + adjust) || 0;
+ }
+ hooks.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ";
+ hooks.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]";
+ var lang = deprecate("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function(key) {
+ if (key === undefined) return this.localeData();
+ else return this.locale(key);
+ });
+ var MS_PER_SECOND = 1000, MS_PER_MINUTE = 60 * MS_PER_SECOND, MS_PER_HOUR = 60 * MS_PER_MINUTE, MS_PER_400_YEARS = 3506328 * MS_PER_HOUR;
+ addFormatToken("N", 0, 0, "eraAbbr");
+ addFormatToken("NN", 0, 0, "eraAbbr");
+ addFormatToken("NNN", 0, 0, "eraAbbr");
+ addFormatToken("NNNN", 0, 0, "eraName");
+ addFormatToken("NNNNN", 0, 0, "eraNarrow");
+ addFormatToken("y", [
+ "y",
+ 1
+ ], "yo", "eraYear");
+ addFormatToken("y", [
+ "yy",
+ 2
+ ], 0, "eraYear");
+ addFormatToken("y", [
+ "yyy",
+ 3
+ ], 0, "eraYear");
+ addFormatToken("y", [
+ "yyyy",
+ 4
+ ], 0, "eraYear");
+ addRegexToken("N", matchEraAbbr);
+ addRegexToken("NN", matchEraAbbr);
+ addRegexToken("NNN", matchEraAbbr);
+ addRegexToken("NNNN", matchEraName);
+ addRegexToken("NNNNN", matchEraNarrow);
+ addParseToken([
+ "N",
+ "NN",
+ "NNN",
+ "NNNN",
+ "NNNNN"
+ ], function(input, array, config, token) {
+ var era = config._locale.erasParse(input, token, config._strict);
+ if (era) getParsingFlags(config).era = era;
+ else getParsingFlags(config).invalidEra = input;
+ });
+ addRegexToken("y", matchUnsigned);
+ addRegexToken("yy", matchUnsigned);
+ addRegexToken("yyy", matchUnsigned);
+ addRegexToken("yyyy", matchUnsigned);
+ addRegexToken("yo", matchEraYearOrdinal);
+ addParseToken([
+ "y",
+ "yy",
+ "yyy",
+ "yyyy"
+ ], YEAR);
+ addParseToken([
+ "yo"
+ ], function(input, array, config, token) {
+ var match;
+ if (config._locale._eraYearOrdinalRegex) match = input.match(config._locale._eraYearOrdinalRegex);
+ if (config._locale.eraYearOrdinalParse) array[YEAR] = config._locale.eraYearOrdinalParse(input, match);
+ else array[YEAR] = parseInt(input, 10);
+ });
+ // FORMATTING
+ addFormatToken(0, [
+ "gg",
+ 2
+ ], 0, function() {
+ return this.weekYear() % 100;
+ });
+ addFormatToken(0, [
+ "GG",
+ 2
+ ], 0, function() {
+ return this.isoWeekYear() % 100;
+ });
+ addWeekYearFormatToken("gggg", "weekYear");
+ addWeekYearFormatToken("ggggg", "weekYear");
+ addWeekYearFormatToken("GGGG", "isoWeekYear");
+ addWeekYearFormatToken("GGGGG", "isoWeekYear");
+ // ALIASES
+ addUnitAlias("weekYear", "gg");
+ addUnitAlias("isoWeekYear", "GG");
+ // PRIORITY
+ addUnitPriority("weekYear", 1);
+ addUnitPriority("isoWeekYear", 1);
+ // PARSING
+ addRegexToken("G", matchSigned);
+ addRegexToken("g", matchSigned);
+ addRegexToken("GG", match1to2, match2);
+ addRegexToken("gg", match1to2, match2);
+ addRegexToken("GGGG", match1to4, match4);
+ addRegexToken("gggg", match1to4, match4);
+ addRegexToken("GGGGG", match1to6, match6);
+ addRegexToken("ggggg", match1to6, match6);
+ addWeekParseToken([
+ "gggg",
+ "ggggg",
+ "GGGG",
+ "GGGGG"
+ ], function(input, week, config, token) {
+ week[token.substr(0, 2)] = toInt(input);
+ });
+ addWeekParseToken([
+ "gg",
+ "GG"
+ ], function(input, week, config, token) {
+ week[token] = hooks.parseTwoDigitYear(input);
+ });
+ // FORMATTING
+ addFormatToken("Q", 0, "Qo", "quarter");
+ // ALIASES
+ addUnitAlias("quarter", "Q");
+ // PRIORITY
+ addUnitPriority("quarter", 7);
+ // PARSING
+ addRegexToken("Q", match1);
+ addParseToken("Q", function(input, array) {
+ array[MONTH] = (toInt(input) - 1) * 3;
+ });
+ // FORMATTING
+ addFormatToken("D", [
+ "DD",
+ 2
+ ], "Do", "date");
+ // ALIASES
+ addUnitAlias("date", "D");
+ // PRIORITY
+ addUnitPriority("date", 9);
+ // PARSING
+ addRegexToken("D", match1to2);
+ addRegexToken("DD", match1to2, match2);
+ addRegexToken("Do", function(isStrict, locale) {
+ // TODO: Remove "ordinalParse" fallback in next major release.
+ return isStrict ? locale._dayOfMonthOrdinalParse || locale._ordinalParse : locale._dayOfMonthOrdinalParseLenient;
+ });
+ addParseToken([
+ "D",
+ "DD"
+ ], DATE);
+ addParseToken("Do", function(input, array) {
+ array[DATE] = toInt(input.match(match1to2)[0]);
+ });
+ // MOMENTS
+ var getSetDayOfMonth = makeGetSet("Date", true);
+ // FORMATTING
+ addFormatToken("DDD", [
+ "DDDD",
+ 3
+ ], "DDDo", "dayOfYear");
+ // ALIASES
+ addUnitAlias("dayOfYear", "DDD");
+ // PRIORITY
+ addUnitPriority("dayOfYear", 4);
+ // PARSING
+ addRegexToken("DDD", match1to3);
+ addRegexToken("DDDD", match3);
+ addParseToken([
+ "DDD",
+ "DDDD"
+ ], function(input, array, config) {
+ config._dayOfYear = toInt(input);
+ });
+ // FORMATTING
+ addFormatToken("m", [
+ "mm",
+ 2
+ ], 0, "minute");
+ // ALIASES
+ addUnitAlias("minute", "m");
+ // PRIORITY
+ addUnitPriority("minute", 14);
+ // PARSING
+ addRegexToken("m", match1to2);
+ addRegexToken("mm", match1to2, match2);
+ addParseToken([
+ "m",
+ "mm"
+ ], MINUTE);
+ // MOMENTS
+ var getSetMinute = makeGetSet("Minutes", false);
+ // FORMATTING
+ addFormatToken("s", [
+ "ss",
+ 2
+ ], 0, "second");
+ // ALIASES
+ addUnitAlias("second", "s");
+ // PRIORITY
+ addUnitPriority("second", 15);
+ // PARSING
+ addRegexToken("s", match1to2);
+ addRegexToken("ss", match1to2, match2);
+ addParseToken([
+ "s",
+ "ss"
+ ], SECOND);
+ // MOMENTS
+ var getSetSecond = makeGetSet("Seconds", false);
+ // FORMATTING
+ addFormatToken("S", 0, 0, function() {
+ return ~~(this.millisecond() / 100);
+ });
+ addFormatToken(0, [
+ "SS",
+ 2
+ ], 0, function() {
+ return ~~(this.millisecond() / 10);
+ });
+ addFormatToken(0, [
+ "SSS",
+ 3
+ ], 0, "millisecond");
+ addFormatToken(0, [
+ "SSSS",
+ 4
+ ], 0, function() {
+ return this.millisecond() * 10;
+ });
+ addFormatToken(0, [
+ "SSSSS",
+ 5
+ ], 0, function() {
+ return this.millisecond() * 100;
+ });
+ addFormatToken(0, [
+ "SSSSSS",
+ 6
+ ], 0, function() {
+ return this.millisecond() * 1000;
+ });
+ addFormatToken(0, [
+ "SSSSSSS",
+ 7
+ ], 0, function() {
+ return this.millisecond() * 10000;
+ });
+ addFormatToken(0, [
+ "SSSSSSSS",
+ 8
+ ], 0, function() {
+ return this.millisecond() * 100000;
+ });
+ addFormatToken(0, [
+ "SSSSSSSSS",
+ 9
+ ], 0, function() {
+ return this.millisecond() * 1000000;
+ });
+ // ALIASES
+ addUnitAlias("millisecond", "ms");
+ // PRIORITY
+ addUnitPriority("millisecond", 16);
+ // PARSING
+ addRegexToken("S", match1to3, match1);
+ addRegexToken("SS", match1to3, match2);
+ addRegexToken("SSS", match1to3, match3);
+ var token1, getSetMillisecond;
+ for(token1 = "SSSS"; token1.length <= 9; token1 += "S")addRegexToken(token1, matchUnsigned);
+ for(token1 = "S"; token1.length <= 9; token1 += "S")addParseToken(token1, parseMs);
+ getSetMillisecond = makeGetSet("Milliseconds", false);
+ // FORMATTING
+ addFormatToken("z", 0, 0, "zoneAbbr");
+ addFormatToken("zz", 0, 0, "zoneName");
+ var proto = Moment.prototype;
+ proto.add = add;
+ proto.calendar = calendar$1;
+ proto.clone = clone;
+ proto.diff = diff1;
+ proto.endOf = endOf;
+ proto.format = format1;
+ proto.from = from1;
+ proto.fromNow = fromNow;
+ proto.to = to1;
+ proto.toNow = toNow;
+ proto.get = stringGet;
+ proto.invalidAt = invalidAt;
+ proto.isAfter = isAfter;
+ proto.isBefore = isBefore;
+ proto.isBetween = isBetween;
+ proto.isSame = isSame;
+ proto.isSameOrAfter = isSameOrAfter;
+ proto.isSameOrBefore = isSameOrBefore;
+ proto.isValid = isValid$2;
+ proto.lang = lang;
+ proto.locale = locale1;
+ proto.localeData = localeData;
+ proto.max = prototypeMax;
+ proto.min = prototypeMin;
+ proto.parsingFlags = parsingFlags;
+ proto.set = stringSet;
+ proto.startOf = startOf;
+ proto.subtract = subtract;
+ proto.toArray = toArray;
+ proto.toObject = toObject;
+ proto.toDate = toDate;
+ proto.toISOString = toISOString;
+ proto.inspect = inspect;
+ if (typeof Symbol !== "undefined" && Symbol.for != null) proto[Symbol.for("nodejs.util.inspect.custom")] = function() {
+ return "Moment<" + this.format() + ">";
+ };
+ proto.toJSON = toJSON;
+ proto.toString = toString;
+ proto.unix = unix;
+ proto.valueOf = valueOf;
+ proto.creationData = creationData;
+ proto.eraName = getEraName;
+ proto.eraNarrow = getEraNarrow;
+ proto.eraAbbr = getEraAbbr;
+ proto.eraYear = getEraYear;
+ proto.year = getSetYear;
+ proto.isLeapYear = getIsLeapYear;
+ proto.weekYear = getSetWeekYear;
+ proto.isoWeekYear = getSetISOWeekYear;
+ proto.quarter = proto.quarters = getSetQuarter;
+ proto.month = getSetMonth;
+ proto.daysInMonth = getDaysInMonth;
+ proto.week = proto.weeks = getSetWeek;
+ proto.isoWeek = proto.isoWeeks = getSetISOWeek;
+ proto.weeksInYear = getWeeksInYear;
+ proto.weeksInWeekYear = getWeeksInWeekYear;
+ proto.isoWeeksInYear = getISOWeeksInYear;
+ proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;
+ proto.date = getSetDayOfMonth;
+ proto.day = proto.days = getSetDayOfWeek;
+ proto.weekday = getSetLocaleDayOfWeek;
+ proto.isoWeekday = getSetISODayOfWeek;
+ proto.dayOfYear = getSetDayOfYear;
+ proto.hour = proto.hours = getSetHour;
+ proto.minute = proto.minutes = getSetMinute;
+ proto.second = proto.seconds = getSetSecond;
+ proto.millisecond = proto.milliseconds = getSetMillisecond;
+ proto.utcOffset = getSetOffset;
+ proto.utc = setOffsetToUTC;
+ proto.local = setOffsetToLocal;
+ proto.parseZone = setOffsetToParsedOffset;
+ proto.hasAlignedHourOffset = hasAlignedHourOffset;
+ proto.isDST = isDaylightSavingTime;
+ proto.isLocal = isLocal;
+ proto.isUtcOffset = isUtcOffset;
+ proto.isUtc = isUtc;
+ proto.isUTC = isUtc;
+ proto.zoneAbbr = getZoneAbbr;
+ proto.zoneName = getZoneName;
+ proto.dates = deprecate("dates accessor is deprecated. Use date instead.", getSetDayOfMonth);
+ proto.months = deprecate("months accessor is deprecated. Use month instead", getSetMonth);
+ proto.years = deprecate("years accessor is deprecated. Use year instead", getSetYear);
+ proto.zone = deprecate("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", getSetZone);
+ proto.isDSTShifted = deprecate("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", isDaylightSavingTimeShifted);
+ var proto$1 = Locale.prototype;
+ proto$1.calendar = calendar;
+ proto$1.longDateFormat = longDateFormat;
+ proto$1.invalidDate = invalidDate;
+ proto$1.ordinal = ordinal1;
+ proto$1.preparse = preParsePostFormat;
+ proto$1.postformat = preParsePostFormat;
+ proto$1.relativeTime = relativeTime;
+ proto$1.pastFuture = pastFuture;
+ proto$1.set = set;
+ proto$1.eras = localeEras;
+ proto$1.erasParse = localeErasParse;
+ proto$1.erasConvertYear = localeErasConvertYear;
+ proto$1.erasAbbrRegex = erasAbbrRegex;
+ proto$1.erasNameRegex = erasNameRegex;
+ proto$1.erasNarrowRegex = erasNarrowRegex;
+ proto$1.months = localeMonths;
+ proto$1.monthsShort = localeMonthsShort;
+ proto$1.monthsParse = localeMonthsParse;
+ proto$1.monthsRegex = monthsRegex;
+ proto$1.monthsShortRegex = monthsShortRegex;
+ proto$1.week = localeWeek;
+ proto$1.firstDayOfYear = localeFirstDayOfYear;
+ proto$1.firstDayOfWeek = localeFirstDayOfWeek;
+ proto$1.weekdays = localeWeekdays;
+ proto$1.weekdaysMin = localeWeekdaysMin;
+ proto$1.weekdaysShort = localeWeekdaysShort;
+ proto$1.weekdaysParse = localeWeekdaysParse;
+ proto$1.weekdaysRegex = weekdaysRegex;
+ proto$1.weekdaysShortRegex = weekdaysShortRegex;
+ proto$1.weekdaysMinRegex = weekdaysMinRegex;
+ proto$1.isPM = localeIsPM;
+ proto$1.meridiem = localeMeridiem;
+ getSetGlobalLocale("en", {
+ eras: [
+ {
+ since: "0001-01-01",
+ until: Infinity,
+ offset: 1,
+ name: "Anno Domini",
+ narrow: "AD",
+ abbr: "AD"
+ },
+ {
+ since: "0000-12-31",
+ until: -Infinity,
+ offset: 1,
+ name: "Before Christ",
+ narrow: "BC",
+ abbr: "BC"
+ },
+ ],
+ dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
+ ordinal: function ordinal(number) {
+ var b = number % 10, output = toInt(number % 100 / 10) === 1 ? "th" : b === 1 ? "st" : b === 2 ? "nd" : b === 3 ? "rd" : "th";
+ return number + output;
+ }
+ });
+ // Side effect imports
+ hooks.lang = deprecate("moment.lang is deprecated. Use moment.locale instead.", getSetGlobalLocale);
+ hooks.langData = deprecate("moment.langData is deprecated. Use moment.localeData instead.", getLocale);
+ var mathAbs = Math.abs;
+ var asMilliseconds = makeAs("ms"), asSeconds = makeAs("s"), asMinutes = makeAs("m"), asHours = makeAs("h"), asDays = makeAs("d"), asWeeks = makeAs("w"), asMonths = makeAs("M"), asQuarters = makeAs("Q"), asYears = makeAs("y");
+ var milliseconds1 = makeGetter("milliseconds"), seconds1 = makeGetter("seconds"), minutes1 = makeGetter("minutes"), hours1 = makeGetter("hours"), days1 = makeGetter("days"), months1 = makeGetter("months"), years1 = makeGetter("years");
+ var round = Math.round, thresholds1 = {
+ ss: 44,
+ s: 45,
+ m: 45,
+ h: 22,
+ d: 26,
+ w: null,
+ M: 11
+ };
+ var abs$1 = Math.abs;
+ var proto$2 = Duration.prototype;
+ proto$2.isValid = isValid$1;
+ proto$2.abs = abs;
+ proto$2.add = add$1;
+ proto$2.subtract = subtract$1;
+ proto$2.as = as;
+ proto$2.asMilliseconds = asMilliseconds;
+ proto$2.asSeconds = asSeconds;
+ proto$2.asMinutes = asMinutes;
+ proto$2.asHours = asHours;
+ proto$2.asDays = asDays;
+ proto$2.asWeeks = asWeeks;
+ proto$2.asMonths = asMonths;
+ proto$2.asQuarters = asQuarters;
+ proto$2.asYears = asYears;
+ proto$2.valueOf = valueOf$1;
+ proto$2._bubble = bubble;
+ proto$2.clone = clone$1;
+ proto$2.get = get$2;
+ proto$2.milliseconds = milliseconds1;
+ proto$2.seconds = seconds1;
+ proto$2.minutes = minutes1;
+ proto$2.hours = hours1;
+ proto$2.days = days1;
+ proto$2.weeks = weeks1;
+ proto$2.months = months1;
+ proto$2.years = years1;
+ proto$2.humanize = humanize;
+ proto$2.toISOString = toISOString$1;
+ proto$2.toString = toISOString$1;
+ proto$2.toJSON = toISOString$1;
+ proto$2.locale = locale1;
+ proto$2.localeData = localeData;
+ proto$2.toIsoString = deprecate("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", toISOString$1);
+ proto$2.lang = lang;
+ // FORMATTING
+ addFormatToken("X", 0, 0, "unix");
+ addFormatToken("x", 0, 0, "valueOf");
+ // PARSING
+ addRegexToken("x", matchSigned);
+ addRegexToken("X", matchTimestamp);
+ addParseToken("X", function(input, array, config) {
+ config._d = new Date(parseFloat(input) * 1000);
+ });
+ addParseToken("x", function(input, array, config) {
+ config._d = new Date(toInt(input));
+ });
+ //! moment.js
+ hooks.version = "2.29.4";
+ setHookCallback(createLocal);
+ hooks.fn = proto;
+ hooks.min = min;
+ hooks.max = max;
+ hooks.now = now1;
+ hooks.utc = createUTC;
+ hooks.unix = createUnix;
+ hooks.months = listMonths;
+ hooks.isDate = isDate;
+ hooks.locale = getSetGlobalLocale;
+ hooks.invalid = createInvalid;
+ hooks.duration = createDuration;
+ hooks.isMoment = isMoment;
+ hooks.weekdays = listWeekdays;
+ hooks.parseZone = createInZone;
+ hooks.localeData = getLocale;
+ hooks.isDuration = isDuration;
+ hooks.monthsShort = listMonthsShort;
+ hooks.weekdaysMin = listWeekdaysMin;
+ hooks.defineLocale = defineLocale;
+ hooks.updateLocale = updateLocale;
+ hooks.locales = listLocales;
+ hooks.weekdaysShort = listWeekdaysShort;
+ hooks.normalizeUnits = normalizeUnits;
+ hooks.relativeTimeRounding = getSetRelativeTimeRounding;
+ hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;
+ hooks.calendarFormat = getCalendarFormat;
+ hooks.prototype = proto;
+ // currently HTML5 input type only supports 24-hour formats
+ hooks.HTML5_FMT = {
+ DATETIME_LOCAL: "YYYY-MM-DDTHH:mm",
+ DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss",
+ DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS",
+ DATE: "YYYY-MM-DD",
+ TIME: "HH:mm",
+ TIME_SECONDS: "HH:mm:ss",
+ TIME_MS: "HH:mm:ss.SSS",
+ WEEK: "GGGG-[W]WW",
+ MONTH: "YYYY-MM"
+ };
+ return hooks;
+});
+
+});
+
+
+parcelRequire.register("boFuu", function(module, exports) {
+module.exports = JSON.parse('{"version":"2021e","zones":["Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q|48e5","Africa/Nairobi|LMT +0230 EAT +0245|-2r.g -2u -30 -2J|012132|-2ua2r.g N6nV.g 3Fbu h1cu dzbJ|47e5","Africa/Algiers|PMT WET WEST CET CEST|-9.l 0 -10 -10 -20|0121212121212121343431312123431213|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 DA0 Imo0 rd0 De0 9Xz0 1fb0 1ap0 16K0 2yo0 mEp0 hwL0 jxA0 11A0 dDd0 17b0 11B0 1cN0 2Dy0 1cN0 1fB0 1cL0|26e5","Africa/Lagos|LMT GMT +0030 WAT|-d.z 0 -u -10|01023|-2B40d.z 7iod.z dnXK.p dLzH.z|17e6","Africa/Bissau|LMT -01 GMT|12.k 10 0|012|-2ldX0 2xoo0|39e4","Africa/Maputo|LMT CAT|-2a.k -20|01|-2GJea.k|26e5","Africa/Cairo|EET EEST|-20 -30|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1bIO0 vb0 1ip0 11z0 1iN0 1nz0 12p0 1pz0 10N0 1pz0 16p0 1jz0 s3d0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1WL0 rd0 1Rz0 wp0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1qL0 Xd0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1ny0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 WL0 1qN0 Rb0 1wp0 On0 1zd0 Lz0 1EN0 Fb0 c10 8n0 8Nd0 gL0 e10 mn0|15e6","Africa/Casablanca|LMT +00 +01|u.k 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-2gMnt.E 130Lt.E rb0 Dd0 dVb0 b6p0 TX0 EoB0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4mn0 SyN0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0|32e5","Africa/Ceuta|WET WEST CET CEST|0 -10 -10 -20|010101010101010101010232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-25KN0 11z0 drd0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1y7o0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4VB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|85e3","Africa/El_Aaiun|LMT -01 +00 +01|Q.M 10 0 -10|012323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1rDz7.c 1GVA7.c 6L0 AL0 1Nd0 XX0 1Cp0 pz0 1cBB0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0|20e4","Africa/Johannesburg|SAST SAST SAST|-1u -20 -30|012121|-2GJdu 1Ajdu 1cL0 1cN0 1cL0|84e5","Africa/Juba|LMT CAT CAST EAT|-26.s -20 -30 -30|012121212121212121212121212121212131|-1yW26.s 1zK06.s 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 PeX0|","Africa/Khartoum|LMT CAT CAST EAT|-2a.8 -20 -30 -30|012121212121212121212121212121212131|-1yW2a.8 1zK0a.8 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 HjL0|51e5","Africa/Monrovia|MMT MMT GMT|H.8 I.u 0|012|-23Lzg.Q 28G01.m|11e5","Africa/Ndjamena|LMT WAT WAST|-10.c -10 -20|0121|-2le10.c 2J3c0.c Wn0|13e5","Africa/Sao_Tome|LMT GMT WAT|A.J 0 -10|0121|-2le00 4i6N0 2q00|","Africa/Tripoli|LMT CET CEST EET|-Q.I -10 -20 -20|012121213121212121212121213123123|-21JcQ.I 1hnBQ.I vx0 4iP0 xx0 4eN0 Bb0 7ip0 U0n0 A10 1db0 1cN0 1db0 1dd0 1db0 1eN0 1bb0 1e10 1cL0 1c10 1db0 1dd0 1db0 1cN0 1db0 1q10 fAn0 1ep0 1db0 AKq0 TA0 1o00|11e5","Africa/Tunis|PMT CET CEST|-9.l -10 -20|0121212121212121212121212121212121|-2nco9.l 18pa9.l 1qM0 DA0 3Tc0 11B0 1ze0 WM0 7z0 3d0 14L0 1cN0 1f90 1ar0 16J0 1gXB0 WM0 1rA0 11c0 nwo0 Ko0 1cM0 1cM0 1rA0 10M0 zuM0 10N0 1aN0 1qM0 WM0 1qM0 11A0 1o00|20e5","Africa/Windhoek|+0130 SAST SAST CAT WAT|-1u -20 -30 -20 -10|01213434343434343434343434343434343434343434343434343|-2GJdu 1Ajdu 1cL0 1SqL0 9Io0 16P0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0|32e4","America/Adak|NST NWT NPT BST BDT AHST HST HDT|b0 a0 a0 b0 a0 a0 a0 90|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|326","America/Anchorage|AST AWT APT AHST AHDT YST AKST AKDT|a0 90 90 a0 90 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T00 8wX0 iA0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|30e4","America/Puerto_Rico|AST AWT APT|40 30 30|0120|-17lU0 7XT0 iu0|24e5","America/Araguaina|LMT -03 -02|3c.M 30 20|0121212121212121212121212121212121212121212121212121|-2glwL.c HdKL.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 ny10 Lz0|14e4","America/Argentina/Buenos_Aires|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 A4p0 uL0 1qN0 WL0|","America/Argentina/Catamarca|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Cordoba|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0 1qN0 WL0|","America/Argentina/Jujuy|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1ze0 TX0 1ld0 WK0 1wp0 TX0 A4p0 uL0|","America/Argentina/La_Rioja|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Mendoza|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232312121321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1u20 SL0 1vd0 Tb0 1wp0 TW0 ri10 Op0 7TX0 uL0|","America/Argentina/Rio_Gallegos|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Salta|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0|","America/Argentina/San_Juan|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rld0 m10 8lb0 uL0|","America/Argentina/San_Luis|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121212321212|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 XX0 1q20 SL0 AN0 vDb0 m10 8lb0 8L0 jd0 1qN0 WL0 1qN0|","America/Argentina/Tucuman|CMT -04 -03 -02|4g.M 40 30 20|0121212121212121212121212121212121212121212323232313232123232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 4N0 8BX0 uL0 1qN0 WL0|","America/Argentina/Ushuaia|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rkN0 8p0 8zb0 uL0|","America/Asuncion|AMT -04 -03|3O.E 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-1x589.k 1DKM9.k 3CL0 3Dd0 10L0 1pB0 10n0 1pB0 10n0 1pB0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1lB0 14n0 1dd0 1cL0 1fd0 WL0 1rd0 1aL0 1dB0 Xz0 1qp0 Xb0 1qN0 10L0 1rB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 WN0 1qL0 11B0 1nX0 1ip0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 TX0 1tB0 19X0 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0|28e5","America/Panama|CMT EST|5j.A 50|01|-2uduE.o|15e5","America/Bahia_Banderas|LMT MST CST PST MDT CDT|71 70 60 80 60 50|0121212131414141414141414141414141414152525252525252525252525252525252525252525252525252525252|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|84e3","America/Bahia|LMT -03 -02|2y.4 30 20|01212121212121212121212121212121212121212121212121212121212121|-2glxp.U HdLp.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 l5B0 Rb0|27e5","America/Barbados|LMT AST ADT -0330|3W.t 40 30 3u|0121213121212121|-2m4k1.v 1eAN1.v RB0 1Bz0 Op0 1rb0 11d0 1jJc0 IL0 1ip0 17b0 1ip0 17b0 1ld0 13b0|28e4","America/Belem|LMT -03 -02|3d.U 30 20|012121212121212121212121212121|-2glwK.4 HdKK.4 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|20e5","America/Belize|LMT CST -0530 CWT CPT CDT|5Q.M 60 5u 50 50 50|012121212121212121212121212121212121212121212121213412121212121212121212121212121212121212121215151|-2kBu7.c fPA7.c Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu Rcu 7Bt0 Ni0 4nd0 Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu e9Au qn0 lxB0 mn0|57e3","America/Boa_Vista|LMT -04 -03|42.E 40 30|0121212121212121212121212121212121|-2glvV.k HdKV.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 smp0 WL0 1tB0 2L0|62e2","America/Bogota|BMT -05 -04|4U.g 50 40|0121|-2eb73.I 38yo3.I 2en0|90e5","America/Boise|PST PDT MST MWT MPT MDT|80 70 70 60 60 60|0101023425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-261q0 1nX0 11B0 1nX0 8C10 JCL0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 Dd0 1Kn0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e4","America/Cambridge_Bay|-00 MST MWT MPT MDDT MDT CST CDT EST|0 70 60 60 50 60 60 50 50|0123141515151515151515151515151515151515151515678651515151515151515151515151515151515151515151515151515151515151515151515151|-21Jc0 RO90 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11A0 1nX0 2K0 WQ0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e2","America/Campo_Grande|LMT -04 -03|3C.s 40 30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwl.w HdLl.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|77e4","America/Cancun|LMT CST EST EDT CDT|5L.4 60 50 40 50|0123232341414141414141414141414141414141412|-1UQG0 2q2o0 yLB0 1lb0 14p0 1lb0 14p0 Lz0 xB0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0|63e4","America/Caracas|CMT -0430 -04|4r.E 4u 40|01212|-2kV7w.k 28KM2.k 1IwOu kqo0|29e5","America/Cayenne|LMT -04 -03|3t.k 40 30|012|-2mrwu.E 2gWou.E|58e3","America/Chicago|CST CDT EST CWT CPT|60 50 50 50 50|01010101010101010101010101010101010102010101010103401010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 1wp0 TX0 WN0 1qL0 1cN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 11B0 1Hz0 14p0 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|92e5","America/Chihuahua|LMT MST CST CDT MDT|74.k 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|81e4","America/Costa_Rica|SJMT CST CDT|5A.d 60 50|0121212121|-1Xd6n.L 2lu0n.L Db0 1Kp0 Db0 pRB0 15b0 1kp0 mL0|12e5","America/Phoenix|MST MDT MWT|70 60 60|01010202010|-261r0 1nX0 11B0 1nX0 SgN0 4Al1 Ap0 1db0 SWqX 1cL0|42e5","America/Cuiaba|LMT -04 -03|3I.k 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwf.E HdLf.E 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 4a10 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|54e4","America/Danmarkshavn|LMT -03 -02 GMT|1e.E 30 20 0|01212121212121212121212121212121213|-2a5WJ.k 2z5fJ.k 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 DC0|8","America/Dawson_Creek|PST PDT PWT PPT MST|80 70 70 70 70|0102301010101010101010101010101010101010101010101010101014|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 ML0|12e3","America/Dawson|YST YDT YWT YPT YDDT PST PDT MST|90 80 80 80 70 80 70 70|010102304056565656565656565656565656565656565656565656565656565656565656565656565656565656567|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 jrA0 fNd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1z90|13e2","America/Denver|MST MDT MWT MPT|70 60 60 60|01010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 11B0 1qL0 WN0 mn0 Ord0 8x20 ix0 LCN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e5","America/Detroit|LMT CST EST EWT EPT EDT|5w.b 60 50 40 40 40|0123425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2Cgir.N peqr.N 156L0 8x40 iv0 6fd0 11z0 JxX1 SMX 1cN0 1cL0 aW10 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e5","America/Edmonton|LMT MST MDT MWT MPT|7x.Q 70 60 60 60|0121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2yd4q.8 shdq.8 1in0 17d0 hz0 2dB0 1fz0 1a10 11z0 1qN0 WL0 1qN0 11z0 IGN0 8x20 ix0 3NB0 11z0 XQp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|10e5","America/Eirunepe|LMT -05 -04|4D.s 50 40|0121212121212121212121212121212121|-2glvk.w HdLk.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0 yTd0 d5X0|31e3","America/El_Salvador|LMT CST CDT|5U.M 60 50|012121|-1XiG3.c 2Fvc3.c WL0 1qN0 WL0|11e5","America/Tijuana|LMT MST PST PDT PWT PPT|7M.4 70 80 70 70 70|012123245232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQE0 4PX0 8mM0 8lc0 SN0 1cL0 pHB0 83r0 zI0 5O10 1Rz0 cOO0 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 BUp0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|20e5","America/Fort_Nelson|PST PDT PWT PPT MST|80 70 70 70 70|01023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010104|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0|39e2","America/Fort_Wayne|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010101023010101010101010101040454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 QI10 Db0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 5Tz0 1o10 qLb0 1cL0 1cN0 1cL0 1qhd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Fortaleza|LMT -03 -02|2y 30 20|0121212121212121212121212121212121212121|-2glxq HdLq 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 5z0 2mN0 On0|34e5","America/Glace_Bay|LMT AST ADT AWT APT|3X.M 40 30 30 30|012134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsI0.c CwO0.c 1in0 UGp0 8x50 iu0 iq10 11z0 Jg10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","America/Godthab|LMT -03 -02|3q.U 30 20|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5Ux.4 2z5dx.4 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e3","America/Goose_Bay|NST NDT NST NDT NWT NPT AST ADT ADDT|3u.Q 2u.Q 3u 2u 2u 2u 40 30 20|010232323232323245232323232323232323232323232323232323232326767676767676767676767676767676767676767676768676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-25TSt.8 1in0 DXb0 2HbX.8 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 S10 g0u 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|76e2","America/Grand_Turk|KMT EST EDT AST|57.a 50 40 40|0121212121212121212121212121212121212121212121212121212121212121212121212132121212121212121212121212121212121212121|-2l1uQ.O 2HHBQ.O 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 7jA0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e2","America/Guatemala|LMT CST CDT|62.4 60 50|0121212121|-24KhV.U 2efXV.U An0 mtd0 Nz0 ifB0 17b0 zDB0 11z0|13e5","America/Guayaquil|QMT -05 -04|5e 50 40|0121|-1yVSK 2uILK rz0|27e5","America/Guyana|LMT -04 -0345 -03|3Q.D 40 3J 30|01231|-2mf87.l 8Hc7.l 2r7bJ Ey0f|80e4","America/Halifax|LMT AST ADT AWT APT|4e.o 40 30 30 30|0121212121212121212121212121212121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsHJ.A xzzJ.A 1db0 3I30 1in0 3HX0 IL0 1E10 ML0 1yN0 Pb0 1Bd0 Mn0 1Bd0 Rz0 1w10 Xb0 1w10 LX0 1w10 Xb0 1w10 Lz0 1C10 Jz0 1E10 OL0 1yN0 Un0 1qp0 Xb0 1qp0 11X0 1w10 Lz0 1HB0 LX0 1C10 FX0 1w10 Xb0 1qp0 Xb0 1BB0 LX0 1td0 Xb0 1qp0 Xb0 Rf0 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 6i10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|39e4","America/Havana|HMT CST CDT|5t.A 50 40|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Meuu.o 72zu.o ML0 sld0 An0 1Nd0 Db0 1Nd0 An0 6Ep0 An0 1Nd0 An0 JDd0 Mn0 1Ap0 On0 1fd0 11X0 1qN0 WL0 1wp0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 14n0 1ld0 14L0 1kN0 15b0 1kp0 1cL0 1cN0 1fz0 1a10 1fz0 1fB0 11z0 14p0 1nX0 11B0 1nX0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 1a10 1in0 1a10 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 17c0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 11A0 6i00 Rc0 1wo0 U00 1tA0 Rc0 1wo0 U00 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0|21e5","America/Hermosillo|LMT MST CST PST MDT|7n.Q 70 60 80 60|0121212131414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0|64e4","America/Indiana/Knox|CST CDT CWT CPT EST|60 50 50 50 50|0101023010101010101010101010101010101040101010101010101010101010101010101010101010101010141010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 3Cn0 8wp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 z8o0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Marengo|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010104545454545414545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 dyN0 11z0 6fd0 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1e6p0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Petersburg|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010104010101010101010101010141014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 3Fb0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 19co0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Tell_City|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010401054541010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 8wn0 1cN0 1cL0 1cN0 1cK0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Vevay|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010102304545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 kPB0 Awn0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1lnd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Vincennes|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010454541014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 g0p0 11z0 1o10 11z0 1qL0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 caL0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Winamac|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010101010454541054545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1za0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Inuvik|-00 PST PDDT MST MDT|0 80 60 70 60|0121343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-FnA0 tWU0 1fA0 wPe0 2pz0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|35e2","America/Iqaluit|-00 EWT EPT EST EDDT EDT CST CDT|0 40 40 50 30 40 60 50|01234353535353535353535353535353535353535353567353535353535353535353535353535353535353535353535353535353535353535353535353|-16K00 7nX0 iv0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|67e2","America/Jamaica|KMT EST EDT|57.a 50 40|0121212121212121212121|-2l1uQ.O 2uM1Q.O 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0|94e4","America/Juneau|PST PWT PPT PDT YDT YST AKST AKDT|80 70 70 70 80 90 90 80|01203030303030303030303030403030356767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cM0 1cM0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|33e3","America/Kentucky/Louisville|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101010102301010101010101010101010101454545454545414545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 3Fd0 Nb0 LPd0 11z0 RB0 8x30 iw0 1nX1 e0X 9vd0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 xz0 gso0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Kentucky/Monticello|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 SWp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/La_Paz|CMT BST -04|4w.A 3w.A 40|012|-1x37r.o 13b0|19e5","America/Lima|LMT -05 -04|58.A 50 40|0121212121212121|-2tyGP.o 1bDzP.o zX0 1aN0 1cL0 1cN0 1cL0 1PrB0 zX0 1O10 zX0 6Gp0 zX0 98p0 zX0|11e6","America/Los_Angeles|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 5Wp1 1VaX 3dA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e6","America/Maceio|LMT -03 -02|2m.Q 30 20|012121212121212121212121212121212121212121|-2glxB.8 HdLB.8 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 8Q10 WL0 1tB0 5z0 2mN0 On0|93e4","America/Managua|MMT CST EST CDT|5J.c 60 50 50|0121313121213131|-1quie.M 1yAMe.M 4mn0 9Up0 Dz0 1K10 Dz0 s3F0 1KH0 DB0 9In0 k8p0 19X0 1o30 11y0|22e5","America/Manaus|LMT -04 -03|40.4 40 30|01212121212121212121212121212121|-2glvX.U HdKX.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0|19e5","America/Martinique|FFMT AST ADT|44.k 40 30|0121|-2mPTT.E 2LPbT.E 19X0|39e4","America/Matamoros|LMT CST CDT|6E 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|45e4","America/Mazatlan|LMT MST CST PST MDT|75.E 70 60 80 60|0121212131414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|44e4","America/Menominee|CST CDT CWT CPT EST|60 50 50 50 50|01010230101041010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 LCN0 1fz0 6410 9Jb0 1cM0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|85e2","America/Merida|LMT CST EST CDT|5W.s 60 50 50|0121313131313131313131313131313131313131313131313131313131313131313131313131313131313131|-1UQG0 2q2o0 2hz0 wu30 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|11e5","America/Metlakatla|PST PWT PPT PDT AKST AKDT|80 70 70 70 90 80|01203030303030303030303030303030304545450454545454545454545454545454545454545454|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1hU10 Rd0 1zb0 Op0 1zb0 Op0 1zb0 uM0 jB0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Mexico_City|LMT MST CST CDT CWT|6A.A 70 60 50 50|012121232324232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 gEn0 TX0 3xd0 Jb0 6zB0 SL0 e5d0 17b0 1Pff0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|20e6","America/Miquelon|LMT AST -03 -02|3I.E 40 30 20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2mKkf.k 2LTAf.k gQ10 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|61e2","America/Moncton|EST AST ADT AWT APT|50 40 30 30 30|012121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsH0 CwN0 1in0 zAo0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1K10 Lz0 1zB0 NX0 1u10 Wn0 S20 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14n1 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 ReX 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|64e3","America/Monterrey|LMT CST CDT|6F.g 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|41e5","America/Montevideo|LMT MMT -04 -03 -0330 -0230 -02 -0130|3I.P 3I.P 40 30 3u 2u 20 1u|012343434343434343434343435353636353636375363636363636363636363636363636363636363636363|-2tRUf.9 sVc0 8jcf.9 1db0 1dcu 1cLu 1dcu 1cLu ircu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu WLu 1fAu 1cLu 1o0u 11zu NAu 3jXu zXu Dq0u 19Xu pcu jz0 cm10 19X0 6tB0 1fbu 3o0u jX0 4vB0 xz0 3Cp0 mmu 1a10 IMu Db0 4c10 uL0 1Nd0 An0 1SN0 uL0 mp0 28L0 iPB0 un0 1SN0 xz0 1zd0 Lz0 1zd0 Rb0 1zd0 On0 1wp0 Rb0 s8p0 1fB0 1ip0 11z0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 11z0|17e5","America/Toronto|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101012301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 11Wu 1nzu 1fD0 WJ0 1wr0 Nb0 1Ap0 On0 1zd0 On0 1wp0 TX0 1tB0 TX0 1tB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 4kM0 8x40 iv0 1o10 11z0 1nX0 11z0 1o10 11z0 1o10 1qL0 11D0 1nX0 11B0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e5","America/New_York|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 11B0 1qL0 1a10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x40 iv0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e6","America/Nipigon|EST EDT EWT EPT|50 40 40 40|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 Rnb0 3je0 8x40 iv0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|16e2","America/Nome|NST NWT NPT BST BDT YST AKST AKDT|b0 a0 a0 b0 a0 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cl0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|38e2","America/Noronha|LMT -02 -01|29.E 20 10|0121212121212121212121212121212121212121|-2glxO.k HdKO.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|30e2","America/North_Dakota/Beulah|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/North_Dakota/Center|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/North_Dakota/New_Salem|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Ojinaga|LMT MST CST CDT MDT|6V.E 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3","America/Pangnirtung|-00 AST AWT APT ADDT ADT EDT EST CST CDT|0 40 30 30 20 30 40 50 60 50|012314151515151515151515151515151515167676767689767676767676767676767676767676767676767676767676767676767676767676767676767|-1XiM0 PnG0 8x50 iu0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1o00 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Paramaribo|LMT PMT PMT -0330 -03|3E.E 3E.Q 3E.A 3u 30|01234|-2nDUj.k Wqo0.c qanX.I 1yVXN.o|24e4","America/Port-au-Prince|PPMT EST EDT|4N 50 40|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-28RHb 2FnMb 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14q0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 i6n0 1nX0 11B0 1nX0 d430 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 3iN0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Rio_Branco|LMT -05 -04|4v.c 50 40|01212121212121212121212121212121|-2glvs.M HdLs.M 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0 d5X0|31e4","America/Porto_Velho|LMT -04 -03|4f.A 40 30|012121212121212121212121212121|-2glvI.o HdKI.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|37e4","America/Punta_Arenas|SMT -05 -04 -03|4G.K 50 40 30|0102021212121212121232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 blz0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|","America/Rainy_River|CST CDT CWT CPT|60 50 50 50|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TQ0 1in0 Rnb0 3je0 8x30 iw0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|842","America/Rankin_Inlet|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313131313131313131313131313131313131313131313131313131313131313131|-vDc0 keu0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e2","America/Recife|LMT -03 -02|2j.A 30 20|0121212121212121212121212121212121212121|-2glxE.o HdLE.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|33e5","America/Regina|LMT MST MDT MWT MPT CST|6W.A 70 60 60 60 60|012121212121212121212121341212121212121212121212121215|-2AD51.o uHe1.o 1in0 s2L0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 66N0 1cL0 1cN0 19X0 1fB0 1cL0 1fB0 1cL0 1cN0 1cL0 M30 8x20 ix0 1ip0 1cL0 1ip0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 3NB0 1cL0 1cN0|19e4","America/Resolute|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313431313131313131313131313131313131313131313131313131313131313131|-SnA0 GWS0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|229","America/Santarem|LMT -04 -03|3C.M 40 30|0121212121212121212121212121212|-2glwl.c HdLl.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0|21e4","America/Santiago|SMT -05 -04 -03|4G.K 50 40 30|010202121212121212321232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 9Bz0 jb0 1oN0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|62e5","America/Santo_Domingo|SDMT EST EDT -0430 AST|4E 50 40 4u 40|01213131313131414|-1ttjk 1lJMk Mn0 6sp0 Lbu 1Cou yLu 1RAu wLu 1QMu xzu 1Q0u xXu 1PAu 13jB0 e00|29e5","America/Sao_Paulo|LMT -03 -02|36.s 30 20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwR.w HdKR.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 pTd0 PX0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|20e6","America/Scoresbysund|LMT -02 -01 +00|1r.Q 20 10 0|0121323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2a5Ww.8 2z5ew.8 1a00 1cK0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|452","America/Sitka|PST PWT PPT PDT YST AKST AKDT|80 70 70 70 90 90 80|01203030303030303030303030303030345656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|90e2","America/St_Johns|NST NDT NST NDT NWT NPT NDDT|3u.Q 2u.Q 3u 2u 2u 2u 1u|01010101010101010101010101010101010102323232323232324523232323232323232323232323232323232323232323232323232323232323232323232323232323232326232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-28oit.8 14L0 1nB0 1in0 1gm0 Dz0 1JB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1fB0 19X0 1fB0 19X0 10O0 eKX.8 19X0 1iq0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Swift_Current|LMT MST MDT MWT MPT CST|7b.k 70 60 60 60 60|012134121212121212121215|-2AD4M.E uHdM.E 1in0 UGp0 8x20 ix0 1o10 17b0 1ip0 11z0 1o10 11z0 1o10 11z0 isN0 1cL0 3Cp0 1cL0 1cN0 11z0 1qN0 WL0 pMp0|16e3","America/Tegucigalpa|LMT CST CDT|5M.Q 60 50|01212121|-1WGGb.8 2ETcb.8 WL0 1qN0 WL0 GRd0 AL0|11e5","America/Thule|LMT AST ADT|4z.8 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5To.Q 31NBo.Q 1cL0 1cN0 1cL0 1fB0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|656","America/Thunder_Bay|CST EST EWT EPT EDT|60 50 40 40 40|0123141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-2q5S0 1iaN0 8x40 iv0 XNB0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Vancouver|PST PDT PWT PPT|80 70 70 70|0102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TO0 1in0 UGp0 8x10 iy0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Whitehorse|YST YDT YWT YPT YDDT PST PDT MST|90 80 80 80 70 80 70 70|010102304056565656565656565656565656565656565656565656565656565656565656565656565656565656567|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 3NA0 vrd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1z90|23e3","America/Winnipeg|CST CDT CWT CPT|60 50 50 50|010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aIi0 WL0 3ND0 1in0 Jap0 Rb0 aCN0 8x30 iw0 1tB0 11z0 1ip0 11z0 1o10 11z0 1o10 11z0 1rd0 10L0 1op0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 1cL0 1cN0 11z0 6i10 WL0 6i10 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|66e4","America/Yakutat|YST YWT YPT YDT AKST AKDT|90 80 80 80 90 80|01203030303030303030303030303030304545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-17T10 8x00 iz0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cn0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|642","America/Yellowknife|-00 MST MWT MPT MDDT MDT|0 70 60 60 50 60|012314151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151|-1pdA0 hix0 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","Antarctica/Casey|-00 +08 +11|0 -80 -b0|0121212121212|-2q00 1DjS0 T90 40P0 KL0 blz0 3m10 1o30 14k0 1kr0 12l0 1o01|10","Antarctica/Davis|-00 +07 +05|0 -70 -50|01012121|-vyo0 iXt0 alj0 1D7v0 VB0 3Wn0 KN0|70","Pacific/Port_Moresby|+10|-a0|0||25e4","Antarctica/Macquarie|AEST AEDT -00|-a0 -b0 0|010201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 1a00 4SK0 1ayy0 Lvs0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 3Co0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|1","Antarctica/Mawson|-00 +06 +05|0 -60 -50|012|-CEo0 2fyk0|60","Pacific/Auckland|NZMT NZST NZST NZDT|-bu -cu -c0 -d0|01020202020202020202020202023232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1GCVu Lz0 1tB0 11zu 1o0u 11zu 1o0u 11zu 1o0u 14nu 1lcu 14nu 1lcu 1lbu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1qLu WMu 1qLu 11Au 1n1bu IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|14e5","Antarctica/Palmer|-00 -03 -04 -02|0 30 40 20|0121212121213121212121212121212121212121212121212121212121212121212121212121212121|-cao0 nD0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 jsN0 14N0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|40","Antarctica/Rothera|-00 -03|0 30|01|gOo0|130","Asia/Riyadh|LMT +03|-36.Q -30|01|-TvD6.Q|57e5","Antarctica/Troll|-00 +00 +02|0 0 -20|01212121212121212121212121212121212121212121212121212121212121212121|1puo0 hd0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|40","Antarctica/Vostok|-00 +06|0 -60|01|-tjA0|25","Europe/Oslo|CET CEST|-10 -20|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2awM0 Qm0 W6o0 5pf0 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 wJc0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1qM0 WM0 zpc0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e4","Asia/Almaty|LMT +05 +06 +07|-57.M -50 -60 -70|012323232323232323232321232323232323232323232323232|-1Pc57.M eUo7.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|15e5","Asia/Amman|LMT EET EEST|-2n.I -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1yW2n.I 1HiMn.I KL0 1oN0 11b0 1oN0 11b0 1pd0 1dz0 1cp0 11b0 1op0 11b0 fO10 1db0 1e10 1cL0 1cN0 1cL0 1cN0 1fz0 1pd0 10n0 1ld0 14n0 1hB0 15b0 1ip0 19X0 1cN0 1cL0 1cN0 17b0 1ld0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1So0 y00 1fc0 1dc0 1co0 1dc0 1cM0 1cM0 1cM0 1o00 11A0 1lc0 17c0 1cM0 1cM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 4bX0 Dd0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 LA0 1C00 LA0 1C00 Oo0 1zc0 Oo0 1C00 LA0 1C00 LA0 1C00 LA0 1C00 LA0 1C00 Oo0 1zc0 Oo0 1C00 LA0 1C00 LA0 1C00 LA0 1C00 LA0 1C00 Oo0 1C00 LA0 1C00|25e5","Asia/Anadyr|LMT +12 +13 +14 +11|-bN.U -c0 -d0 -e0 -b0|01232121212121212121214121212121212121212121212121212121212141|-1PcbN.U eUnN.U 23CL0 1db0 2q10 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|13e3","Asia/Aqtau|LMT +04 +05 +06|-3l.4 -40 -50 -60|012323232323232323232123232312121212121212121212|-1Pc3l.4 eUnl.4 24PX0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|15e4","Asia/Aqtobe|LMT +04 +05 +06|-3M.E -40 -50 -60|0123232323232323232321232323232323232323232323232|-1Pc3M.E eUnM.E 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|27e4","Asia/Ashgabat|LMT +04 +05 +06|-3R.w -40 -50 -60|0123232323232323232323212|-1Pc3R.w eUnR.w 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0|41e4","Asia/Atyrau|LMT +03 +05 +06 +04|-3r.I -30 -50 -60 -40|01232323232323232323242323232323232324242424242|-1Pc3r.I eUor.I 24PW0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 2sp0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|","Asia/Baghdad|BMT +03 +04|-2V.A -30 -40|012121212121212121212121212121212121212121212121212121|-26BeV.A 2ACnV.A 11b0 1cp0 1dz0 1dd0 1db0 1cN0 1cp0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1de0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0|66e5","Asia/Qatar|LMT +04 +03|-3q.8 -40 -30|012|-21Jfq.8 27BXq.8|96e4","Asia/Baku|LMT +03 +04 +05|-3j.o -30 -40 -50|01232323232323232323232123232323232323232323232323232323232323232|-1Pc3j.o 1jUoj.o WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 9Je0 1o00 11z0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5","Asia/Bangkok|BMT +07|-6G.4 -70|01|-218SG.4|15e6","Asia/Barnaul|LMT +06 +07 +08|-5z -60 -70 -80|0123232323232323232323212323232321212121212121212121212121212121212|-21S5z pCnz 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 p90 LE0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|","Asia/Beirut|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-21aq0 1on0 1410 1db0 19B0 1in0 1ip0 WL0 1lQp0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 q6N0 En0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1op0 11b0 dA10 17b0 1iN0 17b0 1iN0 17b0 1iN0 17b0 1vB0 SL0 1mp0 13z0 1iN0 17b0 1iN0 17b0 1jd0 12n0 1a10 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0|22e5","Asia/Bishkek|LMT +05 +06 +07|-4W.o -50 -60 -70|012323232323232323232321212121212121212121212121212|-1Pc4W.o eUnW.o 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2e00 1tX0 17b0 1ip0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1cPu 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0|87e4","Asia/Brunei|LMT +0730 +08|-7D.E -7u -80|012|-1KITD.E gDc9.E|42e4","Asia/Kolkata|MMT IST +0630|-5l.a -5u -6u|012121|-2zOtl.a 1r2LP.a 1un0 HB0 7zX0|15e6","Asia/Chita|LMT +08 +09 +10|-7x.Q -80 -90 -a0|012323232323232323232321232323232323232323232323232323232323232312|-21Q7x.Q pAnx.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3re0|33e4","Asia/Choibalsan|LMT +07 +08 +10 +09|-7C -70 -80 -a0 -90|0123434343434343434343434343434343434343434343424242|-2APHC 2UkoC cKn0 1da0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 3Db0 h1f0 1cJ0 1cP0 1cJ0|38e3","Asia/Shanghai|CST CDT|-80 -90|01010101010101010101010101010|-23uw0 18n0 OjB0 Rz0 11d0 1wL0 A10 8HX0 1G10 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 aL0 1tU30 Rb0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0|23e6","Asia/Colombo|MMT +0530 +06 +0630|-5j.w -5u -60 -6u|01231321|-2zOtj.w 1rFbN.w 1zzu 7Apu 23dz0 11zu n3cu|22e5","Asia/Dhaka|HMT +0630 +0530 +06 +07|-5R.k -6u -5u -60 -70|0121343|-18LFR.k 1unn.k HB0 m6n0 2kxbu 1i00|16e6","Asia/Damascus|LMT EET EEST|-2p.c -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-21Jep.c Hep.c 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1xRB0 11X0 1oN0 10L0 1pB0 11b0 1oN0 10L0 1mp0 13X0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 Nb0 1AN0 Nb0 bcp0 19X0 1gp0 19X0 3ld0 1xX0 Vd0 1Bz0 Sp0 1vX0 10p0 1dz0 1cN0 1cL0 1db0 1db0 1g10 1an0 1ap0 1db0 1fd0 1db0 1cN0 1db0 1dd0 1db0 1cp0 1dz0 1c10 1dX0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 19z0 1fB0 1qL0 11B0 1on0 Wp0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0|26e5","Asia/Dili|LMT +08 +09|-8m.k -80 -90|01212|-2le8m.k 1dnXm.k 1nfA0 Xld0|19e4","Asia/Dubai|LMT +04|-3F.c -40|01|-21JfF.c|39e5","Asia/Dushanbe|LMT +05 +06 +07|-4z.c -50 -60 -70|012323232323232323232321|-1Pc4z.c eUnz.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2hB0|76e4","Asia/Famagusta|LMT EET EEST +03|-2f.M -20 -30 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212312121212121212121212121212121212121212121|-1Vc2f.M 2a3cf.M 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 15U0 2Ks0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Asia/Gaza|EET EEST IST IDT|-20 -30 -20 -30|010101010101010101010101010101010123232323232323232323232323232320101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2o0 MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 pBa0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 11z0 1o10 14o0 1lA1 SKX 1xd1 MKX 1AN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nA0 1210 1qL0 WN0 1qL0 WN0 1qL0 11c0 1on0 11B0 1o00 11A0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1nA0 1200 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1nA0 1200 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1qo0 Xc0 1qo0|18e5","Asia/Hebron|EET EEST IST IDT|-20 -30 -20 -30|01010101010101010101010101010101012323232323232323232323232323232010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2o0 MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 pBa0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 12L0 1mN0 14o0 1lc0 Tb0 1xd1 MKX bB0 cn0 1cN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nA0 1210 1qL0 WN0 1qL0 WN0 1qL0 11c0 1on0 11B0 1o00 11A0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1nA0 1200 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1nA0 1200 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 Xc0 1qo0 1200 1qo0 Xc0 1qo0|25e4","Asia/Ho_Chi_Minh|LMT PLMT +07 +08 +09|-76.E -76.u -70 -80 -90|0123423232|-2yC76.E bK00.a 1h7b6.u 5lz0 18o0 3Oq0 k5b0 aW00 BAM0|90e5","Asia/Hong_Kong|LMT HKT HKST HKWT JST|-7A.G -80 -90 -8u -90|0123412121212121212121212121212121212121212121212121212121212121212121|-2CFH0 1taO0 Hc0 xUu 9tBu 11z0 1tDu Rc0 1wo0 11A0 1cM0 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1nX0 U10 1tz0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|73e5","Asia/Hovd|LMT +06 +07 +08|-66.A -60 -70 -80|012323232323232323232323232323232323232323232323232|-2APG6.A 2Uko6.A cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|81e3","Asia/Irkutsk|IMT +07 +08 +09|-6V.5 -70 -80 -90|01232323232323232323232123232323232323232323232323232323232323232|-21zGV.5 pjXV.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Europe/Istanbul|IMT EET EEST +03 +04|-1U.U -20 -30 -30 -40|0121212121212121212121212121212121212121212121234312121212121212121212121212121212121212121212121212121212121212123|-2ogNU.U dzzU.U 11b0 8tB0 1on0 1410 1db0 19B0 1in0 3Rd0 Un0 1oN0 11b0 zSN0 CL0 mp0 1Vz0 1gN0 8yn0 1yp0 ML0 1kp0 17b0 1ip0 17b0 1fB0 19X0 1ip0 19X0 1ip0 17b0 qdB0 38L0 1jd0 Tz0 l6O0 11A0 WN0 1qL0 TB0 1tX0 U10 1tz0 11B0 1in0 17d0 z90 cne0 pb0 2Cp0 1800 14o0 1dc0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1a00 1fA0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WO0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6","Asia/Jakarta|BMT +0720 +0730 +09 +08 WIB|-77.c -7k -7u -90 -80 -70|01232425|-1Q0Tk luM0 mPzO 8vWu 6kpu 4PXu xhcu|31e6","Asia/Jayapura|LMT +09 +0930 WIT|-9m.M -90 -9u -90|0123|-1uu9m.M sMMm.M L4nu|26e4","Asia/Jerusalem|JMT IST IDT IDDT|-2k.E -20 -30 -40|01212121212121321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-26Bek.E SyOk.E MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 3LA0 Eo0 oo0 1co0 1dA0 16o0 10M0 1jc0 1tA0 14o0 1cM0 1a00 11A0 1Nc0 Ao0 1Nc0 Ao0 1Ko0 LA0 1o00 WM0 EQK0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 1hB0 1dX0 1ep0 1aL0 1eN0 17X0 1nf0 11z0 1tB0 19W0 1e10 17b0 1ep0 1gL0 18N0 1fz0 1eN0 17b0 1gq0 1gn0 19d0 1dz0 1c10 17X0 1hB0 1gn0 19d0 1dz0 1c10 17X0 1kp0 1dz0 1c10 1aL0 1eN0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0|81e4","Asia/Kabul|+04 +0430|-40 -4u|01|-10Qs0|46e5","Asia/Kamchatka|LMT +11 +12 +13|-ay.A -b0 -c0 -d0|012323232323232323232321232323232323232323232323232323232323212|-1SLKy.A ivXy.A 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|18e4","Asia/Karachi|LMT +0530 +0630 +05 PKT PKST|-4s.c -5u -6u -50 -50 -60|012134545454|-2xoss.c 1qOKW.c 7zX0 eup0 LqMu 1fy00 1cL0 dK10 11b0 1610 1jX0|24e6","Asia/Urumqi|LMT +06|-5O.k -60|01|-1GgtO.k|32e5","Asia/Kathmandu|LMT +0530 +0545|-5F.g -5u -5J|012|-21JhF.g 2EGMb.g|12e5","Asia/Khandyga|LMT +08 +09 +10 +11|-92.d -80 -90 -a0 -b0|0123232323232323232323212323232323232323232323232343434343434343432|-21Q92.d pAp2.d 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 qK0 yN0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|66e2","Asia/Krasnoyarsk|LMT +06 +07 +08|-6b.q -60 -70 -80|01232323232323232323232123232323232323232323232323232323232323232|-21Hib.q prAb.q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|10e5","Asia/Kuala_Lumpur|SMT +07 +0720 +0730 +09 +08|-6T.p -70 -7k -7u -90 -80|0123435|-2Bg6T.p 17anT.p l5XE 17bO 8Fyu 1so1u|71e5","Asia/Kuching|LMT +0730 +08 +0820 +09|-7l.k -7u -80 -8k -90|0123232323232323242|-1KITl.k gDbP.k 6ynu AnE 1O0k AnE 1NAk AnE 1NAk AnE 1NAk AnE 1O0k AnE 1NAk AnE pAk 8Fz0|13e4","Asia/Macau|LMT CST +09 +10 CDT|-7y.a -80 -90 -a0 -90|012323214141414141414141414141414141414141414141414141414141414141414141|-2CFHy.a 1uqKy.a PX0 1kn0 15B0 11b0 4Qq0 1oM0 11c0 1ko0 1u00 11A0 1cM0 11c0 1o00 11A0 1o00 11A0 1oo0 1400 1o00 11A0 1o00 U00 1tA0 U00 1wo0 Rc0 1wru U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cK0 1cO0 1cK0 1cO0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|57e4","Asia/Magadan|LMT +10 +11 +12|-a3.c -a0 -b0 -c0|012323232323232323232321232323232323232323232323232323232323232312|-1Pca3.c eUo3.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Cq0|95e3","Asia/Makassar|LMT MMT +08 +09 WITA|-7V.A -7V.A -80 -90 -80|01234|-21JjV.A vfc0 myLV.A 8ML0|15e5","Asia/Manila|PST PDT JST|-80 -90 -90|010201010|-1kJI0 AL0 cK10 65X0 mXB0 vX0 VK10 1db0|24e6","Asia/Nicosia|LMT EET EEST|-2d.s -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2d.s 2a3cd.s 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|32e4","Asia/Novokuznetsk|LMT +06 +07 +08|-5M.M -60 -70 -80|012323232323232323232321232323232323232323232323232323232323212|-1PctM.M eULM.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|55e4","Asia/Novosibirsk|LMT +06 +07 +08|-5v.E -60 -70 -80|0123232323232323232323212323212121212121212121212121212121212121212|-21Qnv.E pAFv.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 ml0 Os0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 4eN0|15e5","Asia/Omsk|LMT +05 +06 +07|-4R.u -50 -60 -70|01232323232323232323232123232323232323232323232323232323232323232|-224sR.u pMLR.u 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|12e5","Asia/Oral|LMT +03 +05 +06 +04|-3p.o -30 -50 -60 -40|01232323232323232424242424242424242424242424242|-1Pc3p.o eUop.o 23CK0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 1cM0 IM0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|27e4","Asia/Pontianak|LMT PMT +0730 +09 +08 WITA WIB|-7h.k -7h.k -7u -90 -80 -80 -70|012324256|-2ua7h.k XE00 munL.k 8Rau 6kpu 4PXu xhcu Wqnu|23e4","Asia/Pyongyang|LMT KST JST KST|-8n -8u -90 -90|012313|-2um8n 97XR 1lTzu 2Onc0 6BA0|29e5","Asia/Qostanay|LMT +04 +05 +06|-4e.s -40 -50 -60|012323232323232323232123232323232323232323232323|-1Pc4e.s eUoe.s 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|","Asia/Qyzylorda|LMT +04 +05 +06|-4l.Q -40 -50 -60|01232323232323232323232323232323232323232323232|-1Pc4l.Q eUol.Q 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 3ao0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 zQl0|73e4","Asia/Rangoon|RMT +0630 +09|-6o.L -6u -90|0121|-21Jio.L SmnS.L 7j9u|48e5","Asia/Sakhalin|LMT +09 +11 +12 +10|-9u.M -90 -b0 -c0 -a0|01232323232323232323232423232323232424242424242424242424242424242|-2AGVu.M 1BoMu.M 1qFa0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 2pB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|58e4","Asia/Samarkand|LMT +04 +05 +06|-4r.R -40 -50 -60|01232323232323232323232|-1Pc4r.R eUor.R 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0|36e4","Asia/Seoul|LMT KST JST KST KDT KDT|-8r.Q -8u -90 -90 -a0 -9u|012343434343151515151515134343|-2um8r.Q 97XV.Q 1m1zu 6CM0 Fz0 1kN0 14n0 1kN0 14L0 1zd0 On0 69B0 2I0u OL0 1FB0 Rb0 1qN0 TX0 1tB0 TX0 1tB0 TX0 1tB0 TX0 2ap0 12FBu 11A0 1o00 11A0|23e6","Asia/Srednekolymsk|LMT +10 +11 +12|-ae.Q -a0 -b0 -c0|01232323232323232323232123232323232323232323232323232323232323232|-1Pcae.Q eUoe.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|35e2","Asia/Taipei|CST JST CDT|-80 -90 -90|01020202020202020202020202020202020202020|-1iw80 joM0 1yo0 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 10N0 1BX0 10p0 1pz0 10p0 1pz0 10p0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1BB0 ML0 1Bd0 ML0 uq10 1db0 1cN0 1db0 97B0 AL0|74e5","Asia/Tashkent|LMT +05 +06 +07|-4B.b -50 -60 -70|012323232323232323232321|-1Pc4B.b eUnB.b 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0|23e5","Asia/Tbilisi|TBMT +03 +04 +05|-2X.b -30 -40 -50|0123232323232323232323212121232323232323232323212|-1Pc2X.b 1jUnX.b WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cK0 1cL0 1cN0 1cL0 1cN0 2pz0 1cL0 1fB0 3Nz0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 An0 Os0 WM0|11e5","Asia/Tehran|LMT TMT +0330 +04 +05 +0430|-3p.I -3p.I -3u -40 -50 -4u|01234325252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2btDp.I 1d3c0 1huLT.I TXu 1pz0 sN0 vAu 1cL0 1dB0 1en0 pNB0 UL0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 64p0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0|14e6","Asia/Thimphu|LMT +0530 +06|-5W.A -5u -60|012|-Su5W.A 1BGMs.A|79e3","Asia/Tokyo|JST JDT|-90 -a0|010101010|-QJJ0 Rc0 1lc0 14o0 1zc0 Oo0 1zc0 Oo0|38e6","Asia/Tomsk|LMT +06 +07 +08|-5D.P -60 -70 -80|0123232323232323232323212323232323232323232323212121212121212121212|-21NhD.P pxzD.P 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 co0 1bB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Qp0|10e5","Asia/Ulaanbaatar|LMT +07 +08 +09|-77.w -70 -80 -90|012323232323232323232323232323232323232323232323232|-2APH7.w 2Uko7.w cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|12e5","Asia/Ust-Nera|LMT +08 +09 +12 +11 +10|-9w.S -80 -90 -c0 -b0 -a0|012343434343434343434345434343434343434343434343434343434343434345|-21Q9w.S pApw.S 23CL0 1d90 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|65e2","Asia/Vladivostok|LMT +09 +10 +11|-8L.v -90 -a0 -b0|01232323232323232323232123232323232323232323232323232323232323232|-1SJIL.v itXL.v 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Asia/Yakutsk|LMT +08 +09 +10|-8C.W -80 -90 -a0|01232323232323232323232123232323232323232323232323232323232323232|-21Q8C.W pAoC.W 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|28e4","Asia/Yekaterinburg|LMT PMT +04 +05 +06|-42.x -3J.5 -40 -50 -60|012343434343434343434343234343434343434343434343434343434343434343|-2ag42.x 7mQh.s qBvJ.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|14e5","Asia/Yerevan|LMT +03 +04 +05|-2W -30 -40 -50|0123232323232323232323212121212323232323232323232323232323232|-1Pc2W 1jUnW WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 4RX0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|13e5","Atlantic/Azores|HMT -02 -01 +00 WET|1S.w 20 10 0 0|0121212121212121212121212121212121212121212123212321232123212121212121212121212121212121212121212121232323232323232323232323232323234323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2ldW0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|25e4","Atlantic/Bermuda|BMT BST AST ADT|4j.i 3j.i 40 30|010102323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-28p7E.G 1bb0 1i10 11X0 ru30 thbE.G 1PX0 11B0 1tz0 Rd0 1zb0 Op0 1zb0 3I10 Lz0 1EN0 FX0 1HB0 FX0 1Kp0 Db0 1Kp0 Db0 1Kp0 FX0 93d0 11z0 GAp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e3","Atlantic/Canary|LMT -01 WET WEST|11.A 10 0 -10|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UtaW.o XPAW.o 1lAK0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Atlantic/Cape_Verde|LMT -02 -01|1y.4 20 10|01212|-2ldW0 1eEo0 7zX0 1djf0|50e4","Atlantic/Faroe|LMT WET WEST|r.4 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2uSnw.U 2Wgow.U 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|49e3","Atlantic/Madeira|FMT -01 +00 +01 WET WEST|17.A 10 0 -10 0 -10|0121212121212121212121212121212121212121212123212321232123212121212121212121212121212121212121212121454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2ldX0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e4","Atlantic/Reykjavik|LMT -01 +00 GMT|1s 10 0 0|012121212121212121212121212121212121212121212121212121212121212121213|-2uWmw mfaw 1Bd0 ML0 1LB0 Cn0 1LB0 3fX0 C10 HrX0 1cO0 LB0 1EL0 LA0 1C00 Oo0 1wo0 Rc0 1wo0 Rc0 1wo0 Rc0 1zc0 Oo0 1zc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0|12e4","Atlantic/South_Georgia|-02|20|0||30","Atlantic/Stanley|SMT -04 -03 -02|3P.o 40 30 20|012121212121212323212121212121212121212121212121212121212121212121212|-2kJw8.A 12bA8.A 19X0 1fB0 19X0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 Cn0 1Cc10 WL0 1qL0 U10 1tz0 2mN0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 U10 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qN0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 U10 1tz0 U10 1tz0 U10|21e2","Australia/Sydney|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293k0 xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|40e5","Australia/Adelaide|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293ju xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 WM0 1qM0 Rc0 1zc0 U00 1tA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|11e5","Australia/Brisbane|AEST AEDT|-a0 -b0|01010101010101010|-293k0 xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0|20e5","Australia/Broken_Hill|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293ju xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|18e3","Australia/Hobart|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 1a00 1qM0 Oo0 1zc0 Oo0 TAo0 yM0 1cM0 1cM0 1fA0 1a00 VfA0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|21e4","Australia/Darwin|ACST ACDT|-9u -au|010101010|-293ju xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00|12e4","Australia/Eucla|+0845 +0945|-8J -9J|0101010101010101010|-293iJ xc0 10jc0 yM0 1cM0 1cM0 1gSo0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|368","Australia/Lord_Howe|AEST +1030 +1130 +11|-a0 -au -bu -b0|0121212121313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313|raC0 1zdu Rb0 1zd0 On0 1zd0 On0 1zd0 On0 1zd0 TXu 1qMu WLu 1tAu WLu 1tAu TXu 1tAu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 11Au 1nXu 1qMu 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu 11zu 1o0u WLu 1qMu 14nu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu|347","Australia/Lindeman|AEST AEDT|-a0 -b0|010101010101010101010|-293k0 xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0|10","Australia/Melbourne|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293k0 xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1qM0 11A0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|39e5","Australia/Perth|AWST AWDT|-80 -90|0101010101010101010|-293i0 xc0 10jc0 yM0 1cM0 1cM0 1gSo0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|18e5","CET|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Pacific/Easter|EMT -07 -06 -05|7h.s 70 60 50|012121212121212121212121212123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1uSgG.w 1s4IG.w WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 2pA0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|30e2","CST6CDT|CST CDT CWT CPT|60 50 50 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","EET|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Europe/Dublin|DMT IST GMT BST IST|p.l -y.D 0 -10 -10|01232323232324242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242|-2ax9y.D Rc0 1fzy.D 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 g600 14o0 1wo0 17c0 1io0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","EST|EST|50|0||","EST5EDT|EST EDT EWT EPT|50 40 40 40|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 SgN0 8x40 iv0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","Etc/GMT-0|GMT|0|0||","Etc/GMT-1|+01|-10|0||","Etc/GMT-11|+11|-b0|0||","Pacific/Tarawa|+12|-c0|0||29e3","Etc/GMT-13|+13|-d0|0||","Etc/GMT-14|+14|-e0|0||","Etc/GMT-2|+02|-20|0||","Etc/GMT-3|+03|-30|0||","Etc/GMT-4|+04|-40|0||","Etc/GMT-5|+05|-50|0||","Etc/GMT-6|+06|-60|0||","Indian/Christmas|+07|-70|0||21e2","Etc/GMT-8|+08|-80|0||","Pacific/Palau|+09|-90|0||21e3","Etc/GMT+1|-01|10|0||","Etc/GMT+10|-10|a0|0||","Etc/GMT+11|-11|b0|0||","Etc/GMT+12|-12|c0|0||","Etc/GMT+3|-03|30|0||","Etc/GMT+4|-04|40|0||","Etc/GMT+5|-05|50|0||","Etc/GMT+6|-06|60|0||","Etc/GMT+7|-07|70|0||","Etc/GMT+8|-08|80|0||","Etc/GMT+9|-09|90|0||","Etc/UTC|UTC|0|0||","Europe/Amsterdam|AMT NST +0120 +0020 CEST CET|-j.w -1j.w -1k -k -20 -10|010101010101010101010101010101010101010101012323234545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-2aFcj.w 11b0 1iP0 11A0 1io0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1co0 1io0 1yo0 Pc0 1a00 1fA0 1Bc0 Mo0 1tc0 Uo0 1tA0 U00 1uo0 W00 1s00 VA0 1so0 Vc0 1sM0 UM0 1wo0 Rc0 1u00 Wo0 1rA0 W00 1s00 VA0 1sM0 UM0 1w00 fV0 BCX.w 1tA0 U00 1u00 Wo0 1sm0 601k WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|16e5","Europe/Andorra|WET CET CEST|0 -10 -20|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-UBA0 1xIN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|79e3","Europe/Astrakhan|LMT +03 +04 +05|-3c.c -30 -40 -50|012323232323232323212121212121212121212121212121212121212121212|-1Pcrc.c eUMc.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|10e5","Europe/Athens|AMT EET EEST CEST CET|-1y.Q -20 -30 -20 -10|012123434121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a61x.Q CNbx.Q mn0 kU10 9b0 3Es0 Xa0 1fb0 1dd0 k3X0 Nz0 SCp0 1vc0 SO0 1cM0 1a00 1ao0 1fc0 1a10 1fG0 1cg0 1dX0 1bX0 1cQ0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|35e5","Europe/London|GMT BST BDST|0 -10 -20|0101010101010101010101010101010101010101010101010121212121210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|10e6","Europe/Belgrade|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19RC0 3IP0 WM0 1fA0 1cM0 1cM0 1rc0 Qo0 1vmo0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Berlin|CET CEST CEMT|-10 -20 -30|01010101010101210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 kL0 Nc0 m10 WM0 1ao0 1cp0 dX0 jz0 Dd0 1io0 17c0 1fA0 1a00 1ehA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e5","Europe/Prague|CET CEST GMT|-10 -20 0|01010101010101010201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 1qM0 11c0 mp0 xA0 mn0 17c0 1io0 17c0 1fc0 1ao0 1bNc0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|13e5","Europe/Brussels|WET CET CEST WEST|0 -10 -20 -10|0121212103030303030303030303030303030303030303030303212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ehc0 3zX0 11c0 1iO0 11A0 1o00 11A0 my0 Ic0 1qM0 Rc0 1EM0 UM0 1u00 10o0 1io0 1io0 17c0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a30 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 y00 5Wn0 WM0 1fA0 1cM0 16M0 1iM0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|21e5","Europe/Bucharest|BMT EET EEST|-1I.o -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1xApI.o 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Axc0 On0 1fA0 1a10 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|19e5","Europe/Budapest|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 1oo0 11c0 1lc0 17c0 O1V0 3Nf0 WM0 1fA0 1cM0 1cM0 1oJ0 1dd0 1020 1fX0 1cp0 1cM0 1cM0 1cM0 1fA0 1a00 bhy0 Rb0 1wr0 Rc0 1C00 LA0 1C00 LA0 SNW0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cO0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zurich|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19Lc0 11A0 1o00 11A0 1xG10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e4","Europe/Chisinau|CMT BMT EET EEST CEST CET MSK MSD|-1T -1I.o -20 -30 -20 -10 -30 -40|012323232323232323234545467676767676767676767323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-26jdT wGMa.A 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 27A0 2en0 39g0 WM0 1fA0 1cM0 V90 1t7z0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 gL0 WO0 1cM0 1cM0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11D0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|67e4","Europe/Copenhagen|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 Tz0 VuO0 60q0 WM0 1fA0 1cM0 1cM0 1cM0 S00 1HA0 Nc0 1C00 Dc0 1Nc0 Ao0 1h5A0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Gibraltar|GMT BST BDST CET CEST|0 -10 -20 -10 -20|010101010101010101010101010101010101010101010101012121212121010121010101010101010101034343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 10Jz0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|30e3","Europe/Helsinki|HMT EET EEST|-1D.N -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1WuND.N OULD.N 1dA0 1xGq0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Kaliningrad|CET CEST EET EEST MSK MSD +03|-10 -20 -20 -30 -30 -40 -30|01010101010101232454545454545454543232323232323232323232323232323232323232323262|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 390 7A0 1en0 12N0 1pbb0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|44e4","Europe/Kiev|KMT EET MSK CEST CET MSD EEST|-22.4 -20 -30 -20 -10 -40 -30|0123434252525252525252525256161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc22.4 eUo2.4 rnz0 2Hg0 WM0 1fA0 da0 1v4m0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 Db0 3220 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|34e5","Europe/Kirov|LMT +03 +04 +05|-3i.M -30 -40 -50|01232323232323232321212121212121212121212121212121212121212121|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|48e4","Europe/Lisbon|LMT WET WEST WEMT CET CEST|A.J 0 -10 -20 -10 -20|01212121212121212121212121212121212121212121232123212321232121212121212121212121212121212121212121214121212121212121212121212121212124545454212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2le00 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 pvy0 1cM0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e5","Europe/Luxembourg|LMT CET CEST WET WEST WEST WET|-o.A -10 -20 0 -10 -20 -10|0121212134343434343434343434343434343434343434343434565651212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2DG0o.A t6mo.A TB0 1nX0 Up0 1o20 11A0 rW0 CM0 1qP0 R90 1EO0 UK0 1u20 10m0 1ip0 1in0 17e0 19W0 1fB0 1db0 1cp0 1in0 17d0 1fz0 1a10 1in0 1a10 1in0 17f0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 vA0 60L0 WM0 1fA0 1cM0 17c0 1io0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Madrid|WET WEST WEMT CET CEST|0 -10 -20 -10 -20|010101010101010101210343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-25Td0 19B0 1cL0 1dd0 b1z0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1in0 17d0 iIn0 Hd0 1cL0 bb0 1200 2s20 14n0 5aL0 Mp0 1vz0 17d0 1in0 17d0 1in0 17d0 1in0 17d0 6hX0 11B0 XHX0 1a10 1fz0 1a10 19X0 1cN0 1fz0 1a10 1fC0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e5","Europe/Malta|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1co0 17c0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1co0 1cM0 1lA0 Xc0 1qq0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1iN0 19z0 1fB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Minsk|MMT EET MSK CEST CET MSD EEST +03|-1O -20 -30 -20 -10 -40 -30 -30|01234343252525252525252525261616161616161616161616161616161616161617|-1Pc1O eUnO qNX0 3gQ0 WM0 1fA0 1cM0 Al0 1tsn0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 3Fc0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0|19e5","Europe/Monaco|PMT WET WEST WEMT CET CEST|-9.l 0 -10 -20 -10 -20|01212121212121212121212121212121212121212121212121232323232345454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2n5c9.l cFX9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 2RV0 11z0 11B0 1ze0 WM0 1fA0 1cM0 1fa0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e3","Europe/Moscow|MMT MMT MST MDST MSD MSK +05 EET EEST MSK|-2u.h -2v.j -3v.j -4v.j -40 -30 -50 -20 -30 -40|012132345464575454545454545454545458754545454545454545454545454545454545454595|-2ag2u.h 2pyW.W 1bA0 11X0 GN0 1Hb0 c4v.j ik0 3DA0 dz0 15A0 c10 2q10 iM10 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|16e6","Europe/Paris|PMT WET WEST CEST CET WEMT|-9.l 0 -10 -20 -10 -20|0121212121212121212121212121212121212121212121212123434352543434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 Ik0 5M30 WM0 1fA0 1cM0 Vx0 hB0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e6","Europe/Riga|RMT LST EET MSK CEST CET MSD EEST|-1A.y -2A.y -20 -30 -20 -10 -40 -30|010102345454536363636363636363727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272|-25TzA.y 11A0 1iM0 ko0 gWm0 yDXA.y 2bX0 3fE0 WM0 1fA0 1cM0 1cM0 4m0 1sLy0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 1o00 11A0 1o00 11A0 1qM0 3oo0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|64e4","Europe/Rome|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1cM0 16M0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1C00 LA0 1zc0 Oo0 1C00 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1zc0 Oo0 1fC0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|39e5","Europe/Samara|LMT +03 +04 +05|-3k.k -30 -40 -50|0123232323232323232121232323232323232323232323232323232323212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2y10 14m0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|12e5","Europe/Saratov|LMT +03 +04 +05|-34.i -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 5810|","Europe/Simferopol|SMT EET MSK CEST CET MSD EEST MSK|-2g -20 -30 -20 -10 -40 -30 -40|012343432525252525252525252161616525252616161616161616161616161616161616172|-1Pc2g eUog rEn0 2qs0 WM0 1fA0 1cM0 3V0 1u0L0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 4eL0 1cL0 1cN0 1cL0 1cN0 dX0 WL0 1cN0 1cL0 1fB0 1o30 11B0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4","Europe/Sofia|EET CET CEST EEST|-20 -10 -20 -30|01212103030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030|-168L0 WM0 1fA0 1cM0 1cM0 1cN0 1mKH0 1dd0 1fb0 1ap0 1fb0 1a20 1fy0 1a30 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Stockholm|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 TB0 2yDe0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|15e5","Europe/Tallinn|TMT CET CEST EET MSK MSD EEST|-1D -10 -20 -20 -30 -40 -30|012103421212454545454545454546363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363|-26oND teD 11A0 1Ta0 4rXl KSLD 2FX0 2Jg0 WM0 1fA0 1cM0 18J0 1sTX0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o10 11A0 1qM0 5QM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e4","Europe/Tirane|LMT CET CEST|-1j.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glBj.k 14pcj.k 5LC0 WM0 4M0 1fCK0 10n0 1op0 11z0 1pd0 11z0 1qN0 WL0 1qp0 Xb0 1qp0 Xb0 1qp0 11z0 1lB0 11z0 1qN0 11z0 1iN0 16n0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Ulyanovsk|LMT +03 +04 +05 +02|-3d.A -30 -40 -50 -20|01232323232323232321214121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|13e5","Europe/Uzhgorod|CET CEST MSK MSD EET EEST|-10 -20 -30 -40 -20 -30|010101023232323232323232320454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-1cqL0 6i00 WM0 1fA0 1cM0 1ml0 1Cp0 1r3W0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 1Nf0 2pw0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e4","Europe/Vienna|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 3KM0 14o0 LA00 6i00 WM0 1fA0 1cM0 1cM0 1cM0 400 2qM0 1ao0 1co0 1cM0 1io0 17c0 1gHa0 19X0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|18e5","Europe/Vilnius|WMT KMT CET EET MSK CEST MSD EEST|-1o -1z.A -10 -20 -30 -20 -40 -30|012324525254646464646464646473737373737373737352537373737373737373737373737373737373737373737373737373737373737373737373|-293do 6ILM.o 1Ooz.A zz0 Mfd0 29W0 3is0 WM0 1fA0 1cM0 LV0 1tgL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11B0 1o00 11A0 1qM0 8io0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Volgograd|LMT +03 +04 +05|-2V.E -30 -40 -50|0123232323232323212121212121212121212121212121212121212121212121|-21IqV.E psLV.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 9Jd0 5gn0|10e5","Europe/Warsaw|WMT CET CEST EET EEST|-1o -10 -20 -20 -30|012121234312121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ctdo 1LXo 11d0 1iO0 11A0 1o00 11A0 1on0 11A0 6zy0 HWP0 5IM0 WM0 1fA0 1cM0 1dz0 1mL0 1en0 15B0 1aq0 1nA0 11A0 1io0 17c0 1fA0 1a00 iDX0 LA0 1cM0 1cM0 1C00 Oo0 1cM0 1cM0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1C00 LA0 uso0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zaporozhye|+0220 EET MSK CEST CET MSD EEST|-2k -20 -30 -20 -10 -40 -30|01234342525252525252525252526161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc2k eUok rdb0 2RE0 WM0 1fA0 8m0 1v9a0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cK0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|77e4","HST|HST|a0|0||","Indian/Chagos|LMT +05 +06|-4N.E -50 -60|012|-2xosN.E 3AGLN.E|30e2","Indian/Cocos|+0630|-6u|0||596","Indian/Kerguelen|-00 +05|0 -50|01|-MG00|130","Indian/Mahe|LMT +04|-3F.M -40|01|-2xorF.M|79e3","Indian/Maldives|MMT +05|-4S -50|01|-olgS|35e4","Indian/Mauritius|LMT +04 +05|-3O -40 -50|012121|-2xorO 34unO 14L0 12kr0 11z0|15e4","Indian/Reunion|LMT +04|-3F.Q -40|01|-2mDDF.Q|84e4","Pacific/Kwajalein|+11 +10 +09 -12 +12|-b0 -a0 -90 c0 -c0|012034|-1kln0 akp0 6Up0 12ry0 Wan0|14e3","MET|MET MEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","MST|MST|70|0||","MST7MDT|MST MDT MWT MPT|70 60 60 60|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","Pacific/Chatham|+1215 +1245 +1345|-cf -cJ -dJ|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-WqAf 1adef IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|600","Pacific/Apia|LMT -1130 -11 -10 +14 +13|bq.U bu b0 a0 -e0 -d0|01232345454545454545454545|-2nDMx.4 1yW03.4 2rRbu 1ff0 1a00 CI0 AQ0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0|37e3","Pacific/Bougainville|+10 +09 +11|-a0 -90 -b0|0102|-16Wy0 7CN0 2MQp0|18e4","Pacific/Chuuk|+10 +09|-a0 -90|01010|-2ewy0 axB0 RVX0 axd0|49e3","Pacific/Efate|LMT +11 +12|-bd.g -b0 -c0|012121212121212121212121|-2l9nd.g 2uNXd.g Dc0 n610 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 Lz0 1Nd0 An0|66e3","Pacific/Enderbury|-00 -12 -11 +13|0 c0 b0 -d0|0123|-1iIo0 1GsA0 B7X0|1","Pacific/Fakaofo|-11 +13|b0 -d0|01|1Gfn0|483","Pacific/Fiji|LMT +12 +13|-bT.I -c0 -d0|01212121212121212121212121212121212121212121212121212121212121|-2bUzT.I 3m8NT.I LA0 1EM0 IM0 nJc0 LA0 1o00 Rc0 1wo0 Ao0 1Nc0 Ao0 1Q00 xz0 1SN0 uM0 1SM0 uM0 1VA0 s00 1VA0 s00 1VA0 s00 20o0 pc0 2hc0 bc0 4q00 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00|88e4","Pacific/Galapagos|LMT -05 -06|5W.o 50 60|01212|-1yVS1.A 2dTz1.A gNd0 rz0|25e3","Pacific/Gambier|LMT -09|8X.M 90|01|-2jof0.c|125","Pacific/Guadalcanal|LMT +11|-aD.M -b0|01|-2joyD.M|11e4","Pacific/Guam|GST +09 GDT ChST|-a0 -90 -b0 -a0|01020202020202020203|-18jK0 6pB0 AhB0 3QL0 g2p0 3p91 WOX rX0 1zd0 Rb0 1wp0 Rb0 5xd0 rX0 5sN0 zb1 1C0X On0 ULb0|17e4","Pacific/Honolulu|HST HDT HWT HPT HST|au 9u 9u 9u a0|0102304|-1thLu 8x0 lef0 8wWu iAu 46p0|37e4","Pacific/Kiritimati|-1040 -10 +14|aE a0 -e0|012|nIaE B7Xk|51e2","Pacific/Kosrae|+11 +09 +10 +12|-b0 -90 -a0 -c0|01021030|-2ewz0 axC0 HBy0 akp0 axd0 WOK0 1bdz0|66e2","Pacific/Majuro|+11 +09 +10 +12|-b0 -90 -a0 -c0|0102103|-2ewz0 axC0 HBy0 akp0 6RB0 12um0|28e3","Pacific/Marquesas|LMT -0930|9i 9u|01|-2joeG|86e2","Pacific/Pago_Pago|LMT SST|bm.M b0|01|-2nDMB.c|37e2","Pacific/Nauru|LMT +1130 +09 +12|-b7.E -bu -90 -c0|01213|-1Xdn7.E QCnB.E 7mqu 1lnbu|10e3","Pacific/Niue|LMT -1120 -11|bj.E bk b0|012|-FScE.k suo0.k|12e2","Pacific/Norfolk|+1112 +1130 +1230 +11 +12|-bc -bu -cu -b0 -c0|012134343434343434343434343434343434343434|-Kgbc W01G Oo0 1COo0 9Jcu 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|25e4","Pacific/Noumea|LMT +11 +12|-b5.M -b0 -c0|01212121|-2l9n5.M 2EqM5.M xX0 1PB0 yn0 HeP0 Ao0|98e3","Pacific/Pitcairn|-0830 -08|8u 80|01|18Vku|56","Pacific/Pohnpei|+11 +09 +10|-b0 -90 -a0|010210|-2ewz0 axC0 HBy0 akp0 axd0|34e3","Pacific/Rarotonga|LMT -1030 -0930 -10|aD.4 au 9u a0|0123232323232323232323232323|-FSdk.U 13tbO.U IL0 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu|13e3","Pacific/Tahiti|LMT -10|9W.g a0|01|-2joe1.I|18e4","Pacific/Tongatapu|LMT +1220 +13 +14|-cj.c -ck -d0 -e0|01232323232|-XbMj.c BgLX.c 1yndk 15A0 1wo0 xz0 1Q10 xz0 zWN0 s00|75e3","PST8PDT|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","WET|WET WEST|0 -10|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|"],"links":["Africa/Abidjan|Africa/Accra","Africa/Abidjan|Africa/Bamako","Africa/Abidjan|Africa/Banjul","Africa/Abidjan|Africa/Conakry","Africa/Abidjan|Africa/Dakar","Africa/Abidjan|Africa/Freetown","Africa/Abidjan|Africa/Lome","Africa/Abidjan|Africa/Nouakchott","Africa/Abidjan|Africa/Ouagadougou","Africa/Abidjan|Africa/Timbuktu","Africa/Abidjan|Atlantic/St_Helena","Africa/Cairo|Egypt","Africa/Johannesburg|Africa/Maseru","Africa/Johannesburg|Africa/Mbabane","Africa/Lagos|Africa/Bangui","Africa/Lagos|Africa/Brazzaville","Africa/Lagos|Africa/Douala","Africa/Lagos|Africa/Kinshasa","Africa/Lagos|Africa/Libreville","Africa/Lagos|Africa/Luanda","Africa/Lagos|Africa/Malabo","Africa/Lagos|Africa/Niamey","Africa/Lagos|Africa/Porto-Novo","Africa/Maputo|Africa/Blantyre","Africa/Maputo|Africa/Bujumbura","Africa/Maputo|Africa/Gaborone","Africa/Maputo|Africa/Harare","Africa/Maputo|Africa/Kigali","Africa/Maputo|Africa/Lubumbashi","Africa/Maputo|Africa/Lusaka","Africa/Nairobi|Africa/Addis_Ababa","Africa/Nairobi|Africa/Asmara","Africa/Nairobi|Africa/Asmera","Africa/Nairobi|Africa/Dar_es_Salaam","Africa/Nairobi|Africa/Djibouti","Africa/Nairobi|Africa/Kampala","Africa/Nairobi|Africa/Mogadishu","Africa/Nairobi|Indian/Antananarivo","Africa/Nairobi|Indian/Comoro","Africa/Nairobi|Indian/Mayotte","Africa/Tripoli|Libya","America/Adak|America/Atka","America/Adak|US/Aleutian","America/Anchorage|US/Alaska","America/Argentina/Buenos_Aires|America/Buenos_Aires","America/Argentina/Catamarca|America/Argentina/ComodRivadavia","America/Argentina/Catamarca|America/Catamarca","America/Argentina/Cordoba|America/Cordoba","America/Argentina/Cordoba|America/Rosario","America/Argentina/Jujuy|America/Jujuy","America/Argentina/Mendoza|America/Mendoza","America/Chicago|US/Central","America/Denver|America/Shiprock","America/Denver|Navajo","America/Denver|US/Mountain","America/Detroit|US/Michigan","America/Edmonton|Canada/Mountain","America/Fort_Wayne|America/Indiana/Indianapolis","America/Fort_Wayne|America/Indianapolis","America/Fort_Wayne|US/East-Indiana","America/Godthab|America/Nuuk","America/Halifax|Canada/Atlantic","America/Havana|Cuba","America/Indiana/Knox|America/Knox_IN","America/Indiana/Knox|US/Indiana-Starke","America/Jamaica|Jamaica","America/Kentucky/Louisville|America/Louisville","America/Los_Angeles|US/Pacific","America/Manaus|Brazil/West","America/Mazatlan|Mexico/BajaSur","America/Mexico_City|Mexico/General","America/New_York|US/Eastern","America/Noronha|Brazil/DeNoronha","America/Panama|America/Atikokan","America/Panama|America/Cayman","America/Panama|America/Coral_Harbour","America/Phoenix|America/Creston","America/Phoenix|US/Arizona","America/Puerto_Rico|America/Anguilla","America/Puerto_Rico|America/Antigua","America/Puerto_Rico|America/Aruba","America/Puerto_Rico|America/Blanc-Sablon","America/Puerto_Rico|America/Curacao","America/Puerto_Rico|America/Dominica","America/Puerto_Rico|America/Grenada","America/Puerto_Rico|America/Guadeloupe","America/Puerto_Rico|America/Kralendijk","America/Puerto_Rico|America/Lower_Princes","America/Puerto_Rico|America/Marigot","America/Puerto_Rico|America/Montserrat","America/Puerto_Rico|America/Port_of_Spain","America/Puerto_Rico|America/St_Barthelemy","America/Puerto_Rico|America/St_Kitts","America/Puerto_Rico|America/St_Lucia","America/Puerto_Rico|America/St_Thomas","America/Puerto_Rico|America/St_Vincent","America/Puerto_Rico|America/Tortola","America/Puerto_Rico|America/Virgin","America/Regina|Canada/Saskatchewan","America/Rio_Branco|America/Porto_Acre","America/Rio_Branco|Brazil/Acre","America/Santiago|Chile/Continental","America/Sao_Paulo|Brazil/East","America/St_Johns|Canada/Newfoundland","America/Tijuana|America/Ensenada","America/Tijuana|America/Santa_Isabel","America/Tijuana|Mexico/BajaNorte","America/Toronto|America/Montreal","America/Toronto|America/Nassau","America/Toronto|Canada/Eastern","America/Vancouver|Canada/Pacific","America/Whitehorse|Canada/Yukon","America/Winnipeg|Canada/Central","Asia/Ashgabat|Asia/Ashkhabad","Asia/Bangkok|Asia/Phnom_Penh","Asia/Bangkok|Asia/Vientiane","Asia/Dhaka|Asia/Dacca","Asia/Dubai|Asia/Muscat","Asia/Ho_Chi_Minh|Asia/Saigon","Asia/Hong_Kong|Hongkong","Asia/Jerusalem|Asia/Tel_Aviv","Asia/Jerusalem|Israel","Asia/Kathmandu|Asia/Katmandu","Asia/Kolkata|Asia/Calcutta","Asia/Kuala_Lumpur|Asia/Singapore","Asia/Kuala_Lumpur|Singapore","Asia/Macau|Asia/Macao","Asia/Makassar|Asia/Ujung_Pandang","Asia/Nicosia|Europe/Nicosia","Asia/Qatar|Asia/Bahrain","Asia/Rangoon|Asia/Yangon","Asia/Riyadh|Antarctica/Syowa","Asia/Riyadh|Asia/Aden","Asia/Riyadh|Asia/Kuwait","Asia/Seoul|ROK","Asia/Shanghai|Asia/Chongqing","Asia/Shanghai|Asia/Chungking","Asia/Shanghai|Asia/Harbin","Asia/Shanghai|PRC","Asia/Taipei|ROC","Asia/Tehran|Iran","Asia/Thimphu|Asia/Thimbu","Asia/Tokyo|Japan","Asia/Ulaanbaatar|Asia/Ulan_Bator","Asia/Urumqi|Asia/Kashgar","Atlantic/Faroe|Atlantic/Faeroe","Atlantic/Reykjavik|Iceland","Atlantic/South_Georgia|Etc/GMT+2","Australia/Adelaide|Australia/South","Australia/Brisbane|Australia/Queensland","Australia/Broken_Hill|Australia/Yancowinna","Australia/Darwin|Australia/North","Australia/Hobart|Australia/Currie","Australia/Hobart|Australia/Tasmania","Australia/Lord_Howe|Australia/LHI","Australia/Melbourne|Australia/Victoria","Australia/Perth|Australia/West","Australia/Sydney|Australia/ACT","Australia/Sydney|Australia/Canberra","Australia/Sydney|Australia/NSW","Etc/GMT-0|Etc/GMT","Etc/GMT-0|Etc/GMT+0","Etc/GMT-0|Etc/GMT0","Etc/GMT-0|Etc/Greenwich","Etc/GMT-0|GMT","Etc/GMT-0|GMT+0","Etc/GMT-0|GMT-0","Etc/GMT-0|GMT0","Etc/GMT-0|Greenwich","Etc/UTC|Etc/UCT","Etc/UTC|Etc/Universal","Etc/UTC|Etc/Zulu","Etc/UTC|UCT","Etc/UTC|UTC","Etc/UTC|Universal","Etc/UTC|Zulu","Europe/Belgrade|Europe/Ljubljana","Europe/Belgrade|Europe/Podgorica","Europe/Belgrade|Europe/Sarajevo","Europe/Belgrade|Europe/Skopje","Europe/Belgrade|Europe/Zagreb","Europe/Chisinau|Europe/Tiraspol","Europe/Dublin|Eire","Europe/Helsinki|Europe/Mariehamn","Europe/Istanbul|Asia/Istanbul","Europe/Istanbul|Turkey","Europe/Lisbon|Portugal","Europe/London|Europe/Belfast","Europe/London|Europe/Guernsey","Europe/London|Europe/Isle_of_Man","Europe/London|Europe/Jersey","Europe/London|GB","Europe/London|GB-Eire","Europe/Moscow|W-SU","Europe/Oslo|Arctic/Longyearbyen","Europe/Oslo|Atlantic/Jan_Mayen","Europe/Prague|Europe/Bratislava","Europe/Rome|Europe/San_Marino","Europe/Rome|Europe/Vatican","Europe/Warsaw|Poland","Europe/Zurich|Europe/Busingen","Europe/Zurich|Europe/Vaduz","Indian/Christmas|Etc/GMT-7","Pacific/Auckland|Antarctica/McMurdo","Pacific/Auckland|Antarctica/South_Pole","Pacific/Auckland|NZ","Pacific/Chatham|NZ-CHAT","Pacific/Chuuk|Pacific/Truk","Pacific/Chuuk|Pacific/Yap","Pacific/Easter|Chile/EasterIsland","Pacific/Enderbury|Pacific/Kanton","Pacific/Guam|Pacific/Saipan","Pacific/Honolulu|Pacific/Johnston","Pacific/Honolulu|US/Hawaii","Pacific/Kwajalein|Kwajalein","Pacific/Pago_Pago|Pacific/Midway","Pacific/Pago_Pago|Pacific/Samoa","Pacific/Pago_Pago|US/Samoa","Pacific/Palau|Etc/GMT-9","Pacific/Pohnpei|Pacific/Ponape","Pacific/Port_Moresby|Antarctica/DumontDUrville","Pacific/Port_Moresby|Etc/GMT-10","Pacific/Tarawa|Etc/GMT-12","Pacific/Tarawa|Pacific/Funafuti","Pacific/Tarawa|Pacific/Wake","Pacific/Tarawa|Pacific/Wallis"],"countries":["AD|Europe/Andorra","AE|Asia/Dubai","AF|Asia/Kabul","AG|America/Port_of_Spain America/Antigua","AI|America/Port_of_Spain America/Anguilla","AL|Europe/Tirane","AM|Asia/Yerevan","AO|Africa/Lagos Africa/Luanda","AQ|Antarctica/Casey Antarctica/Davis Antarctica/DumontDUrville Antarctica/Mawson Antarctica/Palmer Antarctica/Rothera Antarctica/Syowa Antarctica/Troll Antarctica/Vostok Pacific/Auckland Antarctica/McMurdo","AR|America/Argentina/Buenos_Aires America/Argentina/Cordoba America/Argentina/Salta America/Argentina/Jujuy America/Argentina/Tucuman America/Argentina/Catamarca America/Argentina/La_Rioja America/Argentina/San_Juan America/Argentina/Mendoza America/Argentina/San_Luis America/Argentina/Rio_Gallegos America/Argentina/Ushuaia","AS|Pacific/Pago_Pago","AT|Europe/Vienna","AU|Australia/Lord_Howe Antarctica/Macquarie Australia/Hobart Australia/Melbourne Australia/Sydney Australia/Broken_Hill Australia/Brisbane Australia/Lindeman Australia/Adelaide Australia/Darwin Australia/Perth Australia/Eucla","AW|America/Curacao America/Aruba","AX|Europe/Helsinki Europe/Mariehamn","AZ|Asia/Baku","BA|Europe/Belgrade Europe/Sarajevo","BB|America/Barbados","BD|Asia/Dhaka","BE|Europe/Brussels","BF|Africa/Abidjan Africa/Ouagadougou","BG|Europe/Sofia","BH|Asia/Qatar Asia/Bahrain","BI|Africa/Maputo Africa/Bujumbura","BJ|Africa/Lagos Africa/Porto-Novo","BL|America/Port_of_Spain America/St_Barthelemy","BM|Atlantic/Bermuda","BN|Asia/Brunei","BO|America/La_Paz","BQ|America/Curacao America/Kralendijk","BR|America/Noronha America/Belem America/Fortaleza America/Recife America/Araguaina America/Maceio America/Bahia America/Sao_Paulo America/Campo_Grande America/Cuiaba America/Santarem America/Porto_Velho America/Boa_Vista America/Manaus America/Eirunepe America/Rio_Branco","BS|America/Nassau","BT|Asia/Thimphu","BW|Africa/Maputo Africa/Gaborone","BY|Europe/Minsk","BZ|America/Belize","CA|America/St_Johns America/Halifax America/Glace_Bay America/Moncton America/Goose_Bay America/Blanc-Sablon America/Toronto America/Nipigon America/Thunder_Bay America/Iqaluit America/Pangnirtung America/Atikokan America/Winnipeg America/Rainy_River America/Resolute America/Rankin_Inlet America/Regina America/Swift_Current America/Edmonton America/Cambridge_Bay America/Yellowknife America/Inuvik America/Creston America/Dawson_Creek America/Fort_Nelson America/Whitehorse America/Dawson America/Vancouver","CC|Indian/Cocos","CD|Africa/Maputo Africa/Lagos Africa/Kinshasa Africa/Lubumbashi","CF|Africa/Lagos Africa/Bangui","CG|Africa/Lagos Africa/Brazzaville","CH|Europe/Zurich","CI|Africa/Abidjan","CK|Pacific/Rarotonga","CL|America/Santiago America/Punta_Arenas Pacific/Easter","CM|Africa/Lagos Africa/Douala","CN|Asia/Shanghai Asia/Urumqi","CO|America/Bogota","CR|America/Costa_Rica","CU|America/Havana","CV|Atlantic/Cape_Verde","CW|America/Curacao","CX|Indian/Christmas","CY|Asia/Nicosia Asia/Famagusta","CZ|Europe/Prague","DE|Europe/Zurich Europe/Berlin Europe/Busingen","DJ|Africa/Nairobi Africa/Djibouti","DK|Europe/Copenhagen","DM|America/Port_of_Spain America/Dominica","DO|America/Santo_Domingo","DZ|Africa/Algiers","EC|America/Guayaquil Pacific/Galapagos","EE|Europe/Tallinn","EG|Africa/Cairo","EH|Africa/El_Aaiun","ER|Africa/Nairobi Africa/Asmara","ES|Europe/Madrid Africa/Ceuta Atlantic/Canary","ET|Africa/Nairobi Africa/Addis_Ababa","FI|Europe/Helsinki","FJ|Pacific/Fiji","FK|Atlantic/Stanley","FM|Pacific/Chuuk Pacific/Pohnpei Pacific/Kosrae","FO|Atlantic/Faroe","FR|Europe/Paris","GA|Africa/Lagos Africa/Libreville","GB|Europe/London","GD|America/Port_of_Spain America/Grenada","GE|Asia/Tbilisi","GF|America/Cayenne","GG|Europe/London Europe/Guernsey","GH|Africa/Accra","GI|Europe/Gibraltar","GL|America/Nuuk America/Danmarkshavn America/Scoresbysund America/Thule","GM|Africa/Abidjan Africa/Banjul","GN|Africa/Abidjan Africa/Conakry","GP|America/Port_of_Spain America/Guadeloupe","GQ|Africa/Lagos Africa/Malabo","GR|Europe/Athens","GS|Atlantic/South_Georgia","GT|America/Guatemala","GU|Pacific/Guam","GW|Africa/Bissau","GY|America/Guyana","HK|Asia/Hong_Kong","HN|America/Tegucigalpa","HR|Europe/Belgrade Europe/Zagreb","HT|America/Port-au-Prince","HU|Europe/Budapest","ID|Asia/Jakarta Asia/Pontianak Asia/Makassar Asia/Jayapura","IE|Europe/Dublin","IL|Asia/Jerusalem","IM|Europe/London Europe/Isle_of_Man","IN|Asia/Kolkata","IO|Indian/Chagos","IQ|Asia/Baghdad","IR|Asia/Tehran","IS|Atlantic/Reykjavik","IT|Europe/Rome","JE|Europe/London Europe/Jersey","JM|America/Jamaica","JO|Asia/Amman","JP|Asia/Tokyo","KE|Africa/Nairobi","KG|Asia/Bishkek","KH|Asia/Bangkok Asia/Phnom_Penh","KI|Pacific/Tarawa Pacific/Enderbury Pacific/Kiritimati","KM|Africa/Nairobi Indian/Comoro","KN|America/Port_of_Spain America/St_Kitts","KP|Asia/Pyongyang","KR|Asia/Seoul","KW|Asia/Riyadh Asia/Kuwait","KY|America/Panama America/Cayman","KZ|Asia/Almaty Asia/Qyzylorda Asia/Qostanay Asia/Aqtobe Asia/Aqtau Asia/Atyrau Asia/Oral","LA|Asia/Bangkok Asia/Vientiane","LB|Asia/Beirut","LC|America/Port_of_Spain America/St_Lucia","LI|Europe/Zurich Europe/Vaduz","LK|Asia/Colombo","LR|Africa/Monrovia","LS|Africa/Johannesburg Africa/Maseru","LT|Europe/Vilnius","LU|Europe/Luxembourg","LV|Europe/Riga","LY|Africa/Tripoli","MA|Africa/Casablanca","MC|Europe/Monaco","MD|Europe/Chisinau","ME|Europe/Belgrade Europe/Podgorica","MF|America/Port_of_Spain America/Marigot","MG|Africa/Nairobi Indian/Antananarivo","MH|Pacific/Majuro Pacific/Kwajalein","MK|Europe/Belgrade Europe/Skopje","ML|Africa/Abidjan Africa/Bamako","MM|Asia/Yangon","MN|Asia/Ulaanbaatar Asia/Hovd Asia/Choibalsan","MO|Asia/Macau","MP|Pacific/Guam Pacific/Saipan","MQ|America/Martinique","MR|Africa/Abidjan Africa/Nouakchott","MS|America/Port_of_Spain America/Montserrat","MT|Europe/Malta","MU|Indian/Mauritius","MV|Indian/Maldives","MW|Africa/Maputo Africa/Blantyre","MX|America/Mexico_City America/Cancun America/Merida America/Monterrey America/Matamoros America/Mazatlan America/Chihuahua America/Ojinaga America/Hermosillo America/Tijuana America/Bahia_Banderas","MY|Asia/Kuala_Lumpur Asia/Kuching","MZ|Africa/Maputo","NA|Africa/Windhoek","NC|Pacific/Noumea","NE|Africa/Lagos Africa/Niamey","NF|Pacific/Norfolk","NG|Africa/Lagos","NI|America/Managua","NL|Europe/Amsterdam","NO|Europe/Oslo","NP|Asia/Kathmandu","NR|Pacific/Nauru","NU|Pacific/Niue","NZ|Pacific/Auckland Pacific/Chatham","OM|Asia/Dubai Asia/Muscat","PA|America/Panama","PE|America/Lima","PF|Pacific/Tahiti Pacific/Marquesas Pacific/Gambier","PG|Pacific/Port_Moresby Pacific/Bougainville","PH|Asia/Manila","PK|Asia/Karachi","PL|Europe/Warsaw","PM|America/Miquelon","PN|Pacific/Pitcairn","PR|America/Puerto_Rico","PS|Asia/Gaza Asia/Hebron","PT|Europe/Lisbon Atlantic/Madeira Atlantic/Azores","PW|Pacific/Palau","PY|America/Asuncion","QA|Asia/Qatar","RE|Indian/Reunion","RO|Europe/Bucharest","RS|Europe/Belgrade","RU|Europe/Kaliningrad Europe/Moscow Europe/Simferopol Europe/Kirov Europe/Volgograd Europe/Astrakhan Europe/Saratov Europe/Ulyanovsk Europe/Samara Asia/Yekaterinburg Asia/Omsk Asia/Novosibirsk Asia/Barnaul Asia/Tomsk Asia/Novokuznetsk Asia/Krasnoyarsk Asia/Irkutsk Asia/Chita Asia/Yakutsk Asia/Khandyga Asia/Vladivostok Asia/Ust-Nera Asia/Magadan Asia/Sakhalin Asia/Srednekolymsk Asia/Kamchatka Asia/Anadyr","RW|Africa/Maputo Africa/Kigali","SA|Asia/Riyadh","SB|Pacific/Guadalcanal","SC|Indian/Mahe","SD|Africa/Khartoum","SE|Europe/Stockholm","SG|Asia/Singapore","SH|Africa/Abidjan Atlantic/St_Helena","SI|Europe/Belgrade Europe/Ljubljana","SJ|Europe/Oslo Arctic/Longyearbyen","SK|Europe/Prague Europe/Bratislava","SL|Africa/Abidjan Africa/Freetown","SM|Europe/Rome Europe/San_Marino","SN|Africa/Abidjan Africa/Dakar","SO|Africa/Nairobi Africa/Mogadishu","SR|America/Paramaribo","SS|Africa/Juba","ST|Africa/Sao_Tome","SV|America/El_Salvador","SX|America/Curacao America/Lower_Princes","SY|Asia/Damascus","SZ|Africa/Johannesburg Africa/Mbabane","TC|America/Grand_Turk","TD|Africa/Ndjamena","TF|Indian/Reunion Indian/Kerguelen","TG|Africa/Abidjan Africa/Lome","TH|Asia/Bangkok","TJ|Asia/Dushanbe","TK|Pacific/Fakaofo","TL|Asia/Dili","TM|Asia/Ashgabat","TN|Africa/Tunis","TO|Pacific/Tongatapu","TR|Europe/Istanbul","TT|America/Port_of_Spain","TV|Pacific/Funafuti","TW|Asia/Taipei","TZ|Africa/Nairobi Africa/Dar_es_Salaam","UA|Europe/Simferopol Europe/Kiev Europe/Uzhgorod Europe/Zaporozhye","UG|Africa/Nairobi Africa/Kampala","UM|Pacific/Pago_Pago Pacific/Wake Pacific/Honolulu Pacific/Midway","US|America/New_York America/Detroit America/Kentucky/Louisville America/Kentucky/Monticello America/Indiana/Indianapolis America/Indiana/Vincennes America/Indiana/Winamac America/Indiana/Marengo America/Indiana/Petersburg America/Indiana/Vevay America/Chicago America/Indiana/Tell_City America/Indiana/Knox America/Menominee America/North_Dakota/Center America/North_Dakota/New_Salem America/North_Dakota/Beulah America/Denver America/Boise America/Phoenix America/Los_Angeles America/Anchorage America/Juneau America/Sitka America/Metlakatla America/Yakutat America/Nome America/Adak Pacific/Honolulu","UY|America/Montevideo","UZ|Asia/Samarkand Asia/Tashkent","VA|Europe/Rome Europe/Vatican","VC|America/Port_of_Spain America/St_Vincent","VE|America/Caracas","VG|America/Port_of_Spain America/Tortola","VI|America/Port_of_Spain America/St_Thomas","VN|Asia/Bangkok Asia/Ho_Chi_Minh","VU|Pacific/Efate","WF|Pacific/Wallis","WS|Pacific/Apia","YE|Asia/Riyadh Asia/Aden","YT|Africa/Nairobi Indian/Mayotte","ZA|Africa/Johannesburg","ZM|Africa/Maputo Africa/Lusaka","ZW|Africa/Maputo Africa/Harare"]}');
+
+});
+
function $12b7d44107d0fa21$var$asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
try {
var info = gen[key](arg);
@@ -7890,15 +12057,52 @@ function $12b7d44107d0fa21$export$2e2bcd8739ae039(fn) {
}
-function $c6dd85391fd92cc7$export$2e2bcd8739ae039(obj, key, value) {
- if (key in obj) Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- else obj[key] = value;
- return obj;
+function $c6dd85391fd92cc7$export$2e2bcd8739ae039(obj, key, value) {
+ if (key in obj) Object.defineProperty(obj, key, {
+ value: value,
+ enumerable: true,
+ configurable: true,
+ writable: true
+ });
+ else obj[key] = value;
+ return obj;
+}
+
+
+function $cae1acfa74450692$export$2e2bcd8739ae039(arr) {
+ if (Array.isArray(arr)) return arr;
+}
+
+
+function $acc9a3519444db64$export$2e2bcd8739ae039(iter) {
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
+}
+
+
+function $b91c83b8c700272e$export$2e2bcd8739ae039() {
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+}
+
+
+function $32d51848e3cf3e9f$export$2e2bcd8739ae039(arr, len) {
+ if (len == null || len > arr.length) len = arr.length;
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
+ return arr2;
+}
+
+
+function $d72cad4d325aaf94$export$2e2bcd8739ae039(o, minLen) {
+ if (!o) return;
+ if (typeof o === "string") return (0, $32d51848e3cf3e9f$export$2e2bcd8739ae039)(o, minLen);
+ var n = Object.prototype.toString.call(o).slice(8, -1);
+ if (n === "Object" && o.constructor) n = o.constructor.name;
+ if (n === "Map" || n === "Set") return Array.from(n);
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return (0, $32d51848e3cf3e9f$export$2e2bcd8739ae039)(o, minLen);
+}
+
+
+function $ba1dd0fdf18f5321$export$2e2bcd8739ae039(arr, i) {
+ return (0, $cae1acfa74450692$export$2e2bcd8739ae039)(arr) || (0, $acc9a3519444db64$export$2e2bcd8739ae039)(arr, i) || (0, $d72cad4d325aaf94$export$2e2bcd8739ae039)(arr, i) || (0, $b91c83b8c700272e$export$2e2bcd8739ae039)();
}
@@ -10113,6 +14317,11 @@ var $aS0o5 = parcelRequire("aS0o5");
"use strict";
+var $162001cafa2b40fd$export$99b0f35a4c27c9eb = function get_time() {
+ var a = new Date();
+ time = "0".concat(a.getHours()).slice(-2) + ":" + "0".concat(a.getMinutes()).slice(-2);
+ return time;
+};
var $162001cafa2b40fd$export$b04ad9f70842c3f1 = function sort_array(arr, item_key, type) {
if (type == "date") arr.sort(function(a, b) {
var da = new Date(a[item_key]), db = new Date(b[item_key]);
@@ -10192,6 +14401,18 @@ var $162001cafa2b40fd$export$39e873de56f329d8 = function getManifest(callback) {
callback(self.result);
};
self.onerror = function() {};
+}; //popup
+var $162001cafa2b40fd$export$63b4813c5280c707 = function popup(text, action) {
+ var m = document.querySelector("div#popup");
+ var mm = document.querySelector("div#popup div div");
+ if (action == "show") {
+ m.style.display = "block";
+ mm.innerText = text;
+ }
+ if (action == "close") {
+ m.style.display = "none";
+ mm.innerText = "";
+ }
}; //top toaster
var $162001cafa2b40fd$var$queue = [];
var $162001cafa2b40fd$var$timeout;
@@ -10406,6 +14627,7 @@ function $162001cafa2b40fd$var$write_file(data, filename) {
+
function $9f0e935a15ef5a93$export$69e63ab66e4cb4c7(year, month, day) {
var b;
var jd;
@@ -17708,7 +21930,7 @@ var $78c31c2a3de015ee$export$74efaa7af40e4235 = function parse_ics(data, callbac
};
(0, $5535d7a9ff238efe$export$4bf9923669ad6c63).push(imp);
});
- if (saveOnDevice) {
+ if (saveOnDevice == true) {
var without_subscription = (0, $5535d7a9ff238efe$export$4bf9923669ad6c63).filter(function(events1) {
return events1.isSubscription === false;
});
@@ -29273,42 +33495,6 @@ var $7ZixX = parcelRequire("7ZixX");
var $8JYLD = parcelRequire("8JYLD");
-function $cae1acfa74450692$export$2e2bcd8739ae039(arr) {
- if (Array.isArray(arr)) return arr;
-}
-
-
-function $acc9a3519444db64$export$2e2bcd8739ae039(iter) {
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
-}
-
-
-function $b91c83b8c700272e$export$2e2bcd8739ae039() {
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
-}
-
-
-function $32d51848e3cf3e9f$export$2e2bcd8739ae039(arr, len) {
- if (len == null || len > arr.length) len = arr.length;
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
- return arr2;
-}
-
-
-function $d72cad4d325aaf94$export$2e2bcd8739ae039(o, minLen) {
- if (!o) return;
- if (typeof o === "string") return (0, $32d51848e3cf3e9f$export$2e2bcd8739ae039)(o, minLen);
- var n = Object.prototype.toString.call(o).slice(8, -1);
- if (n === "Object" && o.constructor) n = o.constructor.name;
- if (n === "Map" || n === "Set") return Array.from(n);
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return (0, $32d51848e3cf3e9f$export$2e2bcd8739ae039)(o, minLen);
-}
-
-
-function $ba1dd0fdf18f5321$export$2e2bcd8739ae039(arr, i) {
- return (0, $cae1acfa74450692$export$2e2bcd8739ae039)(arr) || (0, $acc9a3519444db64$export$2e2bcd8739ae039)(arr, i) || (0, $d72cad4d325aaf94$export$2e2bcd8739ae039)(arr, i) || (0, $b91c83b8c700272e$export$2e2bcd8739ae039)();
-}
-
function $3f90ab393a67a442$export$2e2bcd8739ae039(arr) {
@@ -37044,6 +41230,9 @@ var $a4be068310fbf330$export$2e2bcd8739ae039 = Object.assign(Object.assign(Objec
+
+
+
var $b17776f098274076$var$IDX = 256, $b17776f098274076$var$HEX = [], $b17776f098274076$var$SIZE = 256, $b17776f098274076$var$BUFFER;
while($b17776f098274076$var$IDX--)$b17776f098274076$var$HEX[$b17776f098274076$var$IDX] = ($b17776f098274076$var$IDX + 256).toString(16).substring(1);
function $b17776f098274076$export$e2a22331486dcca0(len) {
@@ -37054,6 +41243,13 @@ function $b17776f098274076$export$e2a22331486dcca0(len) {
"use strict";
+var $0404b7667063739a$exports = {};
+
+var $0404b7667063739a$var$moment = $0404b7667063739a$exports = (parcelRequire("1MBIo"));
+
+$0404b7667063739a$var$moment.tz.load((parcelRequire("boFuu")));
+
+
var $5535d7a9ff238efe$export$4bf9923669ad6c63 = [];
var $5535d7a9ff238efe$export$c5541db89994d14 = [];
(0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).setDriver((0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).LOCALSTORAGE);
@@ -37065,6 +41261,22 @@ var $5535d7a9ff238efe$var$calendar_names = [
data: ""
}
];
+/*
+let empty = [];
+localforage
+ .setItem("events", empty)
+ .then(function (value) {})
+ .catch(function (err) {
+ console.log(err);
+ });
+*/ var $5535d7a9ff238efe$var$style_calendar_cell = function style_calendar_cell() {
+ document.querySelectorAll("div.calendar-cell").forEach(function(e) {
+ var p = e.getAttribute("data-date");
+ console.log(p);
+ if ($5535d7a9ff238efe$var$event_check(p).event == true) e.classList.add("event");
+ if ($5535d7a9ff238efe$var$rrule_check(p).rrule) e.classList.add("event");
+ });
+};
var $5535d7a9ff238efe$var$load_caldav = function load_caldav(action) {
$5535d7a9ff238efe$export$c5541db89994d14.forEach(function(item) {
var client = new (0, $a4be068310fbf330$export$6a49dbd7f4f10e35)({
@@ -37082,14 +41294,13 @@ var $5535d7a9ff238efe$var$load_caldav = function load_caldav(action) {
while(1)switch(_ctx.prev = _ctx.next){
case 0:
_ctx.prev = 0;
- console.log("hello" + item.id);
- _ctx.next = 4;
+ _ctx.next = 3;
return client.login();
- case 4:
- _ctx.next = 11;
+ case 3:
+ _ctx.next = 10;
break;
- case 6:
- _ctx.prev = 6;
+ case 5:
+ _ctx.prev = 5;
_ctx.t0 = _ctx["catch"](0);
//load cached data
(0, $162001cafa2b40fd$export$a224d1f4f6f98541)("load cached data", 5000);
@@ -37104,23 +41315,25 @@ var $5535d7a9ff238efe$var$load_caldav = function load_caldav(action) {
console.log(err);
});
if (_ctx.t0.message == "Invalid credentials") (0, $162001cafa2b40fd$export$a224d1f4f6f98541)("there was a problem logging into your account " + item.name + " please check your account details", 5000);
- case 11:
- _ctx.next = 13;
+ case 10:
+ _ctx.prev = 10;
+ document.getElementById("icon-loading").style.opacity = 100;
+ _ctx.next = 14;
return client.fetchCalendars();
- case 13:
+ case 14:
calendars = _ctx.sent;
k = [];
i1 = 0;
- case 16:
+ case 17:
if (!(i1 < calendars.length)) {
- _ctx.next = 28;
+ _ctx.next = 31;
break;
}
- _ctx.next = 19;
+ _ctx.next = 20;
return client.fetchCalendarObjects({
calendar: calendars[i1]
});
- case 19:
+ case 20:
objects = _ctx.sent;
data_to_store = {
"displayName": calendars[i1].displayName,
@@ -37140,18 +41353,31 @@ var $5535d7a9ff238efe$var$load_caldav = function load_caldav(action) {
objects.forEach(function(i) {
(0, $78c31c2a3de015ee$export$74efaa7af40e4235)(i.data, $5535d7a9ff238efe$var$callback_caldata_loaded, false, false, i.etag, i.url, item.id);
});
- case 25:
+ document.getElementById("icon-loading").style.opacity = 0;
+ $5535d7a9ff238efe$var$style_calendar_cell();
+ case 28:
i1++;
- _ctx.next = 16;
+ _ctx.next = 17;
break;
- case 28:
+ case 31:
+ _ctx.next = 36;
+ break;
+ case 33:
+ _ctx.prev = 33;
+ _ctx.t1 = _ctx["catch"](10);
+ console.log(_ctx.t1);
+ case 36:
case "end":
return _ctx.stop();
}
}, _callee, null, [
[
0,
- 6
+ 5
+ ],
+ [
+ 10,
+ 33
]
]);
}))();
@@ -37186,7 +41412,7 @@ var $5535d7a9ff238efe$var$sync_caldav = function sync_caldav() {
case 8:
_ctx.prev = 8;
_ctx.next = 11;
- return (0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).getItem($5535d7a9ff238efe$export$c5541db89994d14.id);
+ return (0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).getItem(item.id);
case 11:
value = _ctx.sent;
i = 0;
@@ -37245,9 +41471,9 @@ var $5535d7a9ff238efe$var$sync_caldav = function sync_caldav() {
}))();
});
};
-var $5535d7a9ff238efe$var$create_caldav = function create_caldav(event_data, calendar_id, calendar_name) {
+var $5535d7a9ff238efe$var$create_caldav = function create_caldav(event_data, calendar_id, calendar_name, event) {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("Please wait...", "show");
$5535d7a9ff238efe$export$c5541db89994d14.forEach(function(p) {
- console.log(p);
if (p.id == calendar_id) {
var client = new (0, $a4be068310fbf330$export$6a49dbd7f4f10e35)({
serverUrl: p.server_url,
@@ -37259,7 +41485,7 @@ var $5535d7a9ff238efe$var$create_caldav = function create_caldav(event_data, cal
defaultAccountType: "caldav"
});
(0, $12b7d44107d0fa21$export$2e2bcd8739ae039)((0, (/*@__PURE__*/$parcel$interopDefault($1Kkv1))).mark(function _callee() {
- var n, calendars, i, result;
+ var n, calendars, i, result, ref, res;
return (0, (/*@__PURE__*/$parcel$interopDefault($1Kkv1))).wrap(function _callee$(_ctx) {
while(1)switch(_ctx.prev = _ctx.next){
case 0:
@@ -37283,37 +41509,77 @@ var $5535d7a9ff238efe$var$create_caldav = function create_caldav(event_data, cal
i = 0;
case 14:
if (!(i < calendars.length)) {
- _ctx.next = 24;
+ _ctx.next = 42;
break;
}
if (!(calendars[i].displayName == calendar_name)) {
- _ctx.next = 21;
+ _ctx.next = 39;
break;
}
i = calendars.length;
_ctx.next = 19;
return client.createCalendarObject({
- headers: client.authHeaders,
+ //headers: client.authHeaders,
calendar: calendars[0],
filename: (0, $b17776f098274076$export$e2a22331486dcca0)(16) + ".ics",
- iCalString: event_data
+ iCalString: event_data,
+ headers: {
+ "content-type": "text/calendar; charset=utf-8",
+ "authorization": client.authHeaders.authorization
+ }
});
case 19:
result = _ctx.sent;
- if (result.ok) (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports))).route.set("/page_calendar");
- else (0, $162001cafa2b40fd$export$a224d1f4f6f98541)("the event could not be saved, please try again later or save it in the local calendar.", 5000);
- case 21:
+ if (!result.ok) {
+ _ctx.next = 38;
+ break;
+ }
+ _ctx.prev = 21;
+ _ctx.t1 = (0, $ba1dd0fdf18f5321$export$2e2bcd8739ae039);
+ _ctx.next = 25;
+ return client.propfind({
+ url: result.url,
+ props: (0, $c6dd85391fd92cc7$export$2e2bcd8739ae039)({}, "".concat((0, $a4be068310fbf330$export$60e764203870007f).DAV, ":getetag"), {}),
+ depth: "0",
+ headers: client.authHeaders
+ });
+ case 25:
+ _ctx.t2 = _ctx.sent;
+ ref = (0, _ctx.t1)(_ctx.t2, 1);
+ res = ref[0];
+ event.etag = res.props.getetag;
+ _ctx.next = 34;
+ break;
+ case 31:
+ _ctx.prev = 31;
+ _ctx.t3 = _ctx["catch"](21);
+ console.log(_ctx.t3);
+ case 34:
+ $5535d7a9ff238efe$export$4bf9923669ad6c63.push(event);
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports))).route.set("/page_calendar");
+ }, 5000);
+ _ctx.next = 39;
+ break;
+ case 38:
+ {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("There was a problem saving, please try again later.", "show");
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ }, 5000);
+ }
+ case 39:
i++;
_ctx.next = 14;
break;
- case 24:
- _ctx.next = 29;
+ case 42:
+ _ctx.next = 46;
break;
- case 26:
- _ctx.prev = 26;
- _ctx.t1 = _ctx["catch"](9);
- console.log(_ctx.t1);
- case 29:
+ case 44:
+ _ctx.prev = 44;
+ _ctx.t4 = _ctx["catch"](9);
+ case 46:
case "end":
return _ctx.stop();
}
@@ -37324,15 +41590,19 @@ var $5535d7a9ff238efe$var$create_caldav = function create_caldav(event_data, cal
],
[
9,
- 26
+ 44
+ ],
+ [
+ 21,
+ 31
]
]);
}))();
}
});
};
-var $5535d7a9ff238efe$var$delete_caldav = function delete_caldav(etag, url, account_id) {
- console.log(etag, url, account_id);
+var $5535d7a9ff238efe$var$delete_caldav = function delete_caldav(etag, url, account_id, uid1) {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("Please wait...", "show");
$5535d7a9ff238efe$export$c5541db89994d14.forEach(function(p) {
if (p.id == account_id) {
var client = new (0, $a4be068310fbf330$export$6a49dbd7f4f10e35)({
@@ -37371,14 +41641,33 @@ var $5535d7a9ff238efe$var$delete_caldav = function delete_caldav(etag, url, acco
});
case 11:
result = _ctx.sent;
- console.log(result);
- _ctx.next = 18;
+ if (result.ok) setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ var temp = $5535d7a9ff238efe$export$4bf9923669ad6c63;
+ $5535d7a9ff238efe$export$4bf9923669ad6c63 = "";
+ $5535d7a9ff238efe$export$4bf9923669ad6c63 = temp.filter(function(person) {
+ return person.UID != uid1;
+ });
+ $5535d7a9ff238efe$var$remove_alarm(uid1);
+ $5535d7a9ff238efe$var$clear_form();
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports))).route.set("/page_calendar");
+ }, 5000);
+ else {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("There was a problem saving, please try again later.", "show");
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ }, 5000);
+ }
+ _ctx.next = 19;
break;
case 15:
_ctx.prev = 15;
_ctx.t1 = _ctx["catch"](8);
- console.log(_ctx.t1);
- case 18:
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("There was a problem deleting, please try again later.", "show");
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ }, 5000);
+ case 19:
case "end":
return _ctx.stop();
}
@@ -37396,6 +41685,122 @@ var $5535d7a9ff238efe$var$delete_caldav = function delete_caldav(etag, url, acco
}
});
};
+var $5535d7a9ff238efe$var$update_caldav = function update_caldav(etag, url, data, account_id) {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("Please wait...", "show");
+ $5535d7a9ff238efe$export$c5541db89994d14.forEach(function(p) {
+ if (p.id == account_id) {
+ var client = new (0, $a4be068310fbf330$export$6a49dbd7f4f10e35)({
+ serverUrl: p.server_url,
+ credentials: {
+ username: p.user,
+ password: p.password
+ },
+ authMethod: "Basic",
+ defaultAccountType: "caldav"
+ });
+ (0, $12b7d44107d0fa21$export$2e2bcd8739ae039)((0, (/*@__PURE__*/$parcel$interopDefault($1Kkv1))).mark(function _callee() {
+ var result, ref, res;
+ return (0, (/*@__PURE__*/$parcel$interopDefault($1Kkv1))).wrap(function _callee$(_ctx) {
+ while(1)switch(_ctx.prev = _ctx.next){
+ case 0:
+ _ctx.prev = 0;
+ _ctx.next = 3;
+ return client.login();
+ case 3:
+ _ctx.next = 8;
+ break;
+ case 5:
+ _ctx.prev = 5;
+ _ctx.t0 = _ctx["catch"](0);
+ if (_ctx.t0.message == "Invalid credentials") (0, $162001cafa2b40fd$export$a224d1f4f6f98541)("there was a problem logging into your account " + item.name + " please check your account details", 5000);
+ case 8:
+ _ctx.prev = 8;
+ _ctx.next = 11;
+ return client.updateCalendarObject({
+ calendarObject: {
+ url: url,
+ data: data,
+ etag: etag
+ },
+ headers: client.authHeaders
+ });
+ case 11:
+ result = _ctx.sent;
+ if (!result.ok) {
+ _ctx.next = 29;
+ break;
+ }
+ _ctx.prev = 13;
+ _ctx.t1 = (0, $ba1dd0fdf18f5321$export$2e2bcd8739ae039);
+ _ctx.next = 17;
+ return client.propfind({
+ url: result.url,
+ props: (0, $c6dd85391fd92cc7$export$2e2bcd8739ae039)({}, "".concat((0, $a4be068310fbf330$export$60e764203870007f).DAV, ":getetag"), {}),
+ depth: "0",
+ headers: client.authHeaders
+ });
+ case 17:
+ _ctx.t2 = _ctx.sent;
+ ref = (0, _ctx.t1)(_ctx.t2, 1);
+ res = ref[0];
+ $5535d7a9ff238efe$export$4bf9923669ad6c63.map(function(item) {
+ if (item.etag === etag) {
+ item.etag = res.props.getetag;
+ return item.etag;
+ } else return item;
+ });
+ _ctx.next = 26;
+ break;
+ case 23:
+ _ctx.prev = 23;
+ _ctx.t3 = _ctx["catch"](13);
+ console.log(_ctx.t3);
+ case 26:
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports))).route.set("/page_calendar");
+ }, 5000);
+ _ctx.next = 30;
+ break;
+ case 29:
+ {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("There was a problem saving, please try again later.", "show");
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ }, 5000);
+ }
+ case 30:
+ _ctx.next = 36;
+ break;
+ case 32:
+ _ctx.prev = 32;
+ _ctx.t4 = _ctx["catch"](8);
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("There was a problem saving, please try again later.", "show");
+ setTimeout(function() {
+ (0, $162001cafa2b40fd$export$63b4813c5280c707)("", "close");
+ }, 5000);
+ case 36:
+ case "end":
+ return _ctx.stop();
+ }
+ }, _callee, null, [
+ [
+ 0,
+ 5
+ ],
+ [
+ 8,
+ 32
+ ],
+ [
+ 13,
+ 23
+ ]
+ ]);
+ }))();
+ }
+ });
+};
var $5535d7a9ff238efe$var$load_subscriptions = function load_subscriptions() {
if ($5535d7a9ff238efe$var$subscriptions == null || $5535d7a9ff238efe$var$subscriptions.lenght == -1 || $5535d7a9ff238efe$var$subscriptions == "undefined") return false;
for(var i = 0; i < $5535d7a9ff238efe$var$subscriptions.length; i++)(0, $78c31c2a3de015ee$export$730c80d46f5e5f34)($5535d7a9ff238efe$var$subscriptions[i].url, "", $5535d7a9ff238efe$var$subscriptions[i].id);
@@ -37415,7 +41820,13 @@ var $5535d7a9ff238efe$var$load_subscriptions = function load_subscriptions() {
$5535d7a9ff238efe$var$load_caldav(); //sync_caldav();
}).catch(function(err) {
console.log(err);
-});
+}); //get event data
+var $5535d7a9ff238efe$var$get_event_date = function get_event_date() {
+ $5535d7a9ff238efe$export$471f7ae5c4103ae1.selected_day_id = document.activeElement.getAttribute("data-id");
+ $5535d7a9ff238efe$var$update_event_date = $5535d7a9ff238efe$export$4bf9923669ad6c63.filter(function(arr) {
+ return arr.UID == $5535d7a9ff238efe$export$471f7ae5c4103ae1.selected_day_id;
+ })[0];
+};
var $5535d7a9ff238efe$var$months = [
"Jan",
"Feb",
@@ -37450,17 +41861,21 @@ var $5535d7a9ff238efe$export$471f7ae5c4103ae1 = {
visible: false,
update_event_id: ""
};
-var $5535d7a9ff238efe$var$settings = {};
+var $5535d7a9ff238efe$var$settings = {
+ default_notification: "",
+ ads: "",
+ timezone: $0404b7667063739a$exports.tz.guess()
+};
var $5535d7a9ff238efe$var$blob = "";
var $5535d7a9ff238efe$var$load_settings = function load_settings() {
(0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).getItem("settings").then(function(value) {
if (value == null) return false;
$5535d7a9ff238efe$var$settings = value;
- document.getElementById("default-notification-time").value = $5535d7a9ff238efe$var$settings.default_notification;
}).catch(function(err) {
console.log(err);
});
-}; //ads || ads free
+};
+$5535d7a9ff238efe$var$load_settings(); //ads || ads free
//KaioOs ads
var $5535d7a9ff238efe$var$getManifest = function getManifest(callback) {
if (!navigator.mozApps) return false;
@@ -37493,7 +41908,6 @@ var $5535d7a9ff238efe$var$find_closest_date = function find_closest_date(search_
for(var i2 = 0; i2 < $5535d7a9ff238efe$export$4bf9923669ad6c63.length - 1; i2++)if (search > new Date($5535d7a9ff238efe$export$4bf9923669ad6c63[i2].dateStart).getTime()) {
$5535d7a9ff238efe$var$t = $5535d7a9ff238efe$export$4bf9923669ad6c63[i2].dateStart;
i2 = $5535d7a9ff238efe$export$4bf9923669ad6c63.length;
- console.log("result" + $5535d7a9ff238efe$var$t);
}
} //default
if ($5535d7a9ff238efe$var$t == 0) {
@@ -37696,7 +42110,6 @@ Date.prototype.getWeek = function() {
return 1 + Math.round(((date.getTime() - week1.getTime()) / 86400000 - 3 + (week1.getDay() + 6) % 7) / 7);
};
var $5535d7a9ff238efe$var$showCalendar = function showCalendar(month, year) {
- //bottom_bar("add", "events", "options");
var firstDay = new Date(year, month).getDay();
var daysInMonth = 32 - new Date(year, month, 32).getDate();
var tbl = document.getElementById("calendar-body"); // clearing all previous cells
@@ -37723,7 +42136,8 @@ var $5535d7a9ff238efe$var$showCalendar = function showCalendar(month, year) {
var cellText1 = document.createTextNode(date);
cell1.appendChild(cellText1);
cell1.appendChild(span); // set tabindex
- cell1.setAttribute("tabindex", date - 1); // store date with leading 0
+ cell1.setAttribute("tabindex", date - 1);
+ cell1.classList.add("calendar-cell"); // store date with leading 0
// because input type date
// accept only day month with leading zero
var mmonth = "0".concat(month + 1).slice(-2);
@@ -37758,8 +42172,7 @@ var $5535d7a9ff238efe$var$showCalendar = function showCalendar(month, year) {
};
var $5535d7a9ff238efe$var$clear_form = function clear_form() {
document.querySelectorAll("div#add-edit-event input").forEach(function(e) {
- e.value = "";
- document.getElementById("form-image").src = "";
+ e.value = ""; // document.getElementById("form-image").src = "";
$5535d7a9ff238efe$var$blob = "";
});
};
@@ -37774,12 +42187,28 @@ var $5535d7a9ff238efe$var$page_calendar = {
class: "width-100 height-100",
id: "calendar"
}, [
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("h3", {
- class: "card-header",
- id: "monthAndYear"
- }),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
- class: "calendar-head flex"
+ class: "flex justify-content-spacebetween",
+ id: ""
+ }, [
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("h3", {
+ class: "card-header",
+ id: "monthAndYear"
+ }),
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
+ id: "icon-loading"
+ }, "loading"),
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
+ id: "time",
+ oncreate: function oncreate(e) {
+ setInterval(function() {
+ document.getElementById("time").innerText = (0, $162001cafa2b40fd$export$99b0f35a4c27c9eb)();
+ }, 3600);
+ }
+ }, "")
+ ]),
+ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
+ class: "calendar-head flex width-100"
}, [
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", "Sun"),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", "Mon"),
@@ -37954,6 +42383,9 @@ var $5535d7a9ff238efe$var$page_options = {
},
oncreate: function oncreate() {
$5535d7a9ff238efe$var$load_settings();
+ setTimeout(function() {
+ document.querySelector("#default-notification-time").value = $5535d7a9ff238efe$var$settings.default_notification;
+ }, 1000);
}
}, [
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("option", {
@@ -38227,6 +42659,8 @@ var $5535d7a9ff238efe$var$page_add_event = {
var dom = param.dom;
return setTimeout(function() {
dom.focus();
+ console.log("tz" + $0404b7667063739a$exports.tz.guess());
+ $5535d7a9ff238efe$var$settings.timezone = $0404b7667063739a$exports.tz.guess();
}, 500);
}
}, [
@@ -38236,7 +42670,10 @@ var $5535d7a9ff238efe$var$page_add_event = {
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("input", {
placeholder: "",
type: "text",
- id: "event-title"
+ id: "event-title",
+ oncreate: function oncreate() {
+ $5535d7a9ff238efe$var$load_settings();
+ }
})
]),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
@@ -38330,7 +42767,9 @@ var $5535d7a9ff238efe$var$page_add_event = {
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("select", {
id: "event-notification-time",
oncreate: function oncreate() {
- document.getElementById("event-notification-time").value = $5535d7a9ff238efe$var$settings.default_notification;
+ setTimeout(function() {
+ document.querySelector("#event-notification-time").value = $5535d7a9ff238efe$var$settings.default_notification;
+ }, 2000);
}
}, [
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("option", {
@@ -38378,23 +42817,19 @@ var $5535d7a9ff238efe$var$page_add_event = {
}, "Yearly")
])
]),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", (0, $c6dd85391fd92cc7$export$2e2bcd8739ae039)({
- class: "item",
- tabindex: "",
- id: "select-image"
- }, "tabindex", "9"), "add image"),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
- id: "form-image-wrapper"
- }, [
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("img", {
- id: "form-image",
- "data-blob": ""
- })
- ]),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
+ /*
+ m(
+ "button",
+ { class: "item", tabindex: "", id: "select-image", tabindex: "9" },
+ "add image"
+ ),
+ m("div", { id: "form-image-wrapper" }, [
+ m("img", { id: "form-image", "data-blob": "" }),
+ ]),
+ */ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
class: "item input-parent",
id: "event-calendar-wrapper",
- tabindex: "10"
+ tabindex: "9"
}, [
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("label", {
for: "notification"
@@ -38411,7 +42846,7 @@ var $5535d7a9ff238efe$var$page_add_event = {
])
]),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", {
- tabindex: "11",
+ tabindex: "10",
id: "save-event",
class: "item",
onclick: function onclick() {
@@ -38460,7 +42895,8 @@ var $5535d7a9ff238efe$var$page_edit_event = {
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("input", {
placeholder: "",
type: "text",
- id: "event-location"
+ id: "event-location",
+ value: $5535d7a9ff238efe$var$update_event_date.LOCATION
})
]),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
@@ -38501,7 +42937,8 @@ var $5535d7a9ff238efe$var$page_edit_event = {
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("input", {
placeholder: "hh:mm:ss",
type: "time",
- id: "event-time-start"
+ id: "event-time-start",
+ value: $5535d7a9ff238efe$var$update_event_date.time_start
})
]),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
@@ -38563,7 +43000,10 @@ var $5535d7a9ff238efe$var$page_edit_event = {
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
class: "item input-parent",
id: "event-recur-wrapper",
- tabindex: "8"
+ tabindex: "8",
+ oncreate: function oncreate() {
+ document.querySelector("#event-notification-time").value = $5535d7a9ff238efe$var$update_event_date.alarm;
+ }
}, [
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("label", {
for: "notification"
@@ -38589,34 +43029,32 @@ var $5535d7a9ff238efe$var$page_edit_event = {
}, "Yearly")
])
]),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", (0, $c6dd85391fd92cc7$export$2e2bcd8739ae039)({
- class: "item",
- tabindex: "",
- id: "select-image"
- }, "tabindex", "9"), "add image"),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("div", {
- id: "form-image-wrapper"
- }, [
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("img", {
- id: "form-image",
- "src": $5535d7a9ff238efe$var$update_event_date.ATTACH
- })
- ]),
- (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", {
- tabindex: "10",
+ /*
+ m(
+ "button",
+ { class: "item", tabindex: "", id: "select-image", tabindex: "9" },
+ "add image"
+ ),
+ m("div", { id: "form-image-wrapper" }, [
+ m("img", {
+ id: "form-image",
+ "src": update_event_date.ATTACH,
+ }),
+ ]),*/ (0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", {
+ tabindex: "9",
id: "delete-event",
class: "item",
onclick: function onclick() {
console.log($5535d7a9ff238efe$var$update_event_date);
- $5535d7a9ff238efe$var$delete_event($5535d7a9ff238efe$var$update_event_date.etag, $5535d7a9ff238efe$var$update_event_date.url, $5535d7a9ff238efe$var$update_event_date.id);
+ $5535d7a9ff238efe$var$delete_event($5535d7a9ff238efe$var$update_event_date.etag, $5535d7a9ff238efe$var$update_event_date.url, $5535d7a9ff238efe$var$update_event_date.id, $5535d7a9ff238efe$var$update_event_date.UID);
}
}, "delete"),
(0, (/*@__PURE__*/$parcel$interopDefault($fa8308bd2c5b6d7e$exports)))("button", {
- tabindex: "11",
+ tabindex: "10",
id: "save-event",
class: "item",
onclick: function onclick() {
- $5535d7a9ff238efe$var$update_event();
+ $5535d7a9ff238efe$var$update_event($5535d7a9ff238efe$var$update_event_date.id);
}
}, "update")
]);
@@ -38841,7 +43279,7 @@ var $5535d7a9ff238efe$var$convert_ics_date = function convert_ics_date(t5) {
var nn = t5.replace(/-/g, "");
nn = nn.replace(/:/g, "");
nn = nn.replace(" ", "T");
- nn = nn + "Z";
+ nn;
return nn;
};
var $5535d7a9ff238efe$var$export_data = [];
@@ -38902,7 +43340,8 @@ var $5535d7a9ff238efe$var$store_event = function store_event(db_id, cal_name) {
alarmTrigger: notification_time,
isSubscription: false,
multidayevent: multidayevent,
- ATTACH: $5535d7a9ff238efe$var$blob
+ ATTACH: $5535d7a9ff238efe$var$blob,
+ id: db_id
};
if (event.alarm != "none") {
event.BEGIN = "VALARM";
@@ -38911,11 +43350,14 @@ var $5535d7a9ff238efe$var$store_event = function store_event(db_id, cal_name) {
event.END = "VALARM";
$5535d7a9ff238efe$var$add_alarm(calc_notification, event.SUMMARY, event.UID);
}
- if (db_id == "local-id" && cal_name == "local") {
+ if (db_id == "local-id") {
+ console.log("local");
$5535d7a9ff238efe$export$4bf9923669ad6c63.push(event);
+ console.log(JSON.stringify($5535d7a9ff238efe$export$4bf9923669ad6c63));
var without_subscription = $5535d7a9ff238efe$export$4bf9923669ad6c63.filter(function(events1) {
- return events1.isSubscription === false;
+ return events1.id == "local-id";
});
+ console.log(JSON.stringify(without_subscription));
(0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).setItem("events", without_subscription).then(function(value) {
$5535d7a9ff238efe$var$clear_form();
(0, $78c31c2a3de015ee$export$f1976d86f97fc8b2)("greg.ics", without_subscription);
@@ -38927,11 +43369,14 @@ var $5535d7a9ff238efe$var$store_event = function store_event(db_id, cal_name) {
}).catch(function(err) {
console.log(err);
});
- } else $5535d7a9ff238efe$var$create_caldav("BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//ZContent.net//Greg Calendar 1.0//EN\nCALSCALE:GREGORIAN\nBEGIN:VEVENT\nSUMMARY:" + event.SUMMARY + "\nUID:" + event.UID + "\nSEQUENCE:0\nRRULE:" + event.RRULE + "\nDTSTART:" + event.DTSTART + "\nDTEND:" + event.DTEND + "\nDTSTAMP:" + event.DTSTAMP + "\nLOCATION:" + event.LOCATION + "\nDESCRIPTION:" + event.DESCRIPTION + "\nEND:VEVENT\nEND:VCALENDAR", db_id, cal_name);
+ } else {
+ console.log("online");
+ $5535d7a9ff238efe$var$create_caldav("BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//ZContent.net//Greg Calendar 1.0//EN\nCALSCALE:GREGORIAN\nBEGIN:VEVENT\nSUMMARY:" + event.SUMMARY + "\nUID:" + event.UID + "\nSEQUENCE:0\nRRULE:" + event.RRULE + "\nDTSTART;TZID=" + $5535d7a9ff238efe$var$settings.timezone + ":" + event.DTSTART + "\nDTEND;TZID=" + $5535d7a9ff238efe$var$settings.timezone + ":" + event.DTEND + "\nDTSTAMP;TZID=" + $5535d7a9ff238efe$var$settings.timezone + ":" + event.DTSTAMP + "\nLOCATION:" + event.LOCATION + "\nDESCRIPTION:" + event.DESCRIPTION + "\nEND:VEVENT\nEND:VCALENDAR", db_id, cal_name, event);
+ }
}; // ////////////
// UPDATE EVENT
// /////////
-var $5535d7a9ff238efe$var$update_event = function update_event() {
+var $5535d7a9ff238efe$var$update_event = function update_event(account_id) {
var validation = true;
if (document.getElementById("event-title").value == "") {
(0, $162001cafa2b40fd$export$a224d1f4f6f98541)("Title can't be empty", 2000);
@@ -38970,15 +43415,17 @@ var $5535d7a9ff238efe$var$update_event = function update_event() {
};
if (validation == false) return false;
index.SUMMARY = document.getElementById("event-title").value;
- index.DESCRIPTION = document.getElementById("event-description").value;
index.LOCATION = document.getElementById("event-location").value;
+ index.DESCRIPTION = document.getElementById("event-description").value;
+ index.CLASS = "PRIVATE";
+ index.DTSTAMP = $5535d7a9ff238efe$var$convert_ics_date(convert_dt_start);
index.DTSTART = $5535d7a9ff238efe$var$convert_ics_date(convert_dt_start);
index.DTEND = $5535d7a9ff238efe$var$convert_ics_date(convert_dt_end);
+ index.RRULE = rrule_convert();
index.dateEnd = document.getElementById("event-date-end").value;
index.dateStart = document.getElementById("event-date").value;
index.time_start = document.getElementById("event-time-start").value;
index.time_end = document.getElementById("event-time-end").value;
- index.RRULE = rrule_convert();
index.rrule_ = document.getElementById("event-recur").value;
index.isSubscription = false;
index.multidayevent = multidayevent;
@@ -38993,41 +43440,44 @@ var $5535d7a9ff238efe$var$update_event = function update_event() {
index.END = "VALARM";
$5535d7a9ff238efe$var$add_alarm(calc_notification, index.SUMMARY, index.UID);
}
+ if (account_id == "local-id") {
+ var without_subscription = $5535d7a9ff238efe$export$4bf9923669ad6c63.filter(function(events2) {
+ return events2.isSubscription === false;
+ });
+ (0, (/*@__PURE__*/$parcel$interopDefault($9fbe31c6ff058869$exports))).setItem("events", without_subscription).then(function(value) {
+ // clean form
+ (0, $162001cafa2b40fd$export$6593825dc0f3a767)("
numeric require
+//
+// anything defined in a previous bundle is accessed via the
+// orig method which is the require for previous bundles
+
+(function (modules, entry, mainEntry, parcelRequireName, globalName) {
+ /* eslint-disable no-undef */
+ var globalObject =
+ typeof globalThis !== 'undefined'
+ ? globalThis
+ : typeof self !== 'undefined'
+ ? self
+ : typeof window !== 'undefined'
+ ? window
+ : typeof global !== 'undefined'
+ ? global
+ : {};
+ /* eslint-enable no-undef */
+
+ // Save the require from previous bundle to this closure if any
+ var previousRequire =
+ typeof globalObject[parcelRequireName] === 'function' &&
+ globalObject[parcelRequireName];
+
+ var cache = previousRequire.cache || {};
+ // Do not use `require` to prevent Webpack from trying to bundle this call
+ var nodeRequire =
+ typeof module !== 'undefined' &&
+ typeof module.require === 'function' &&
+ module.require.bind(module);
+
+ function newRequire(name, jumped) {
+ if (!cache[name]) {
+ if (!modules[name]) {
+ // if we cannot find the module within our internal map or
+ // cache jump to the current global require ie. the last bundle
+ // that was added to the page.
+ var currentRequire =
+ typeof globalObject[parcelRequireName] === 'function' &&
+ globalObject[parcelRequireName];
+ if (!jumped && currentRequire) {
+ return currentRequire(name, true);
+ }
+
+ // If there are other bundles on this page the require from the
+ // previous one is saved to 'previousRequire'. Repeat this as
+ // many times as there are bundles until the module is found or
+ // we exhaust the require chain.
+ if (previousRequire) {
+ return previousRequire(name, true);
+ }
+
+ // Try the node require function if it exists.
+ if (nodeRequire && typeof name === 'string') {
+ return nodeRequire(name);
+ }
+
+ var err = new Error("Cannot find module '" + name + "'");
+ err.code = 'MODULE_NOT_FOUND';
+ throw err;
+ }
+
+ localRequire.resolve = resolve;
+ localRequire.cache = {};
+
+ var module = (cache[name] = new newRequire.Module(name));
+
+ modules[name][0].call(
+ module.exports,
+ localRequire,
+ module,
+ module.exports,
+ this
+ );
+ }
+
+ return cache[name].exports;
+
+ function localRequire(x) {
+ var res = localRequire.resolve(x);
+ return res === false ? {} : newRequire(res);
+ }
+
+ function resolve(x) {
+ var id = modules[name][1][x];
+ return id != null ? id : x;
+ }
+ }
+
+ function Module(moduleName) {
+ this.id = moduleName;
+ this.bundle = newRequire;
+ this.exports = {};
+ }
+
+ newRequire.isParcelRequire = true;
+ newRequire.Module = Module;
+ newRequire.modules = modules;
+ newRequire.cache = cache;
+ newRequire.parent = previousRequire;
+ newRequire.register = function (id, exports) {
+ modules[id] = [
+ function (require, module) {
+ module.exports = exports;
+ },
+ {},
+ ];
+ };
+
+ Object.defineProperty(newRequire, 'root', {
+ get: function () {
+ return globalObject[parcelRequireName];
+ },
+ });
+
+ globalObject[parcelRequireName] = newRequire;
+
+ for (var i = 0; i < entry.length; i++) {
+ newRequire(entry[i]);
+ }
+
+ if (mainEntry) {
+ // Expose entry point to Node, AMD or browser globals
+ // Based on https://github.com/ForbesLindesay/umd/blob/master/template.js
+ var mainExports = newRequire(mainEntry);
+
+ // CommonJS
+ if (typeof exports === 'object' && typeof module !== 'undefined') {
+ module.exports = mainExports;
+
+ // RequireJS
+ } else if (typeof define === 'function' && define.amd) {
+ define(function () {
+ return mainExports;
+ });
+
+ //
+