From 03d733fa178826a1129ae757efaf2aca18c90198 Mon Sep 17 00:00:00 2001 From: Pattrick Hueper Date: Mon, 14 May 2018 11:10:05 +0200 Subject: [PATCH] rename packages ... again... package names must be all lowercase :/ --- build_package.prebuilt.json | 6 +- packages/{deDE => de-de}/package.json | 2 +- packages/deDE/dist/index.js | 3844 -------------------- packages/deDE/dist/index.js.map | 1 - packages/{enUS => en-us}/dist/index.js | 0 packages/{enUS => en-us}/dist/index.js.map | 0 packages/{enUS => en-us}/package.json | 2 +- packages/{itIT => it-it}/package.json | 2 +- packages/itIT/dist/index.js | 3844 -------------------- packages/itIT/dist/index.js.map | 1 - 10 files changed, 6 insertions(+), 7696 deletions(-) rename packages/{deDE => de-de}/package.json (95%) delete mode 100644 packages/deDE/dist/index.js delete mode 100644 packages/deDE/dist/index.js.map rename packages/{enUS => en-us}/dist/index.js (100%) rename packages/{enUS => en-us}/dist/index.js.map (100%) rename packages/{enUS => en-us}/package.json (95%) rename packages/{itIT => it-it}/package.json (95%) delete mode 100644 packages/itIT/dist/index.js delete mode 100644 packages/itIT/dist/index.js.map diff --git a/build_package.prebuilt.json b/build_package.prebuilt.json index 28b9a91..9d76a19 100644 --- a/build_package.prebuilt.json +++ b/build_package.prebuilt.json @@ -7,14 +7,14 @@ "de": [ "de.*" ], - "deDE": [ + "de-de": [ "de", "de-DE" ], "en": [ "en.*" ], - "enUS": [ + "en-us": [ "en", "en-US" ], @@ -27,7 +27,7 @@ "it": [ "it.*" ], - "itIT": [ + "it-it": [ "it", "it-IT" ], diff --git a/packages/deDE/package.json b/packages/de-de/package.json similarity index 95% rename from packages/deDE/package.json rename to packages/de-de/package.json index 305fe52..044af56 100644 --- a/packages/deDE/package.json +++ b/packages/de-de/package.json @@ -1,5 +1,5 @@ { - "name": "js-joda-locale_deDE", + "name": "js-joda-locale_de-de", "version": "1.1.0-pre2+32.0.1", "description": "prebuilt js-joda-locale package for locales: de,de-DE", "repository": { diff --git a/packages/deDE/dist/index.js b/packages/deDE/dist/index.js deleted file mode 100644 index 51f12d0..0000000 --- a/packages/deDE/dist/index.js +++ /dev/null @@ -1,3844 +0,0 @@ -//! @version js-joda-locale - 1.1.0-pre2+32.0.1 -//! @copyright (c) 2015-2016, Philipp Thürwächter, Pattrick Hüper & js-joda contributors -//! @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos -//! @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(require("js-joda")); - else if(typeof define === 'function' && define.amd) - define(["js-joda"], factory); - else if(typeof exports === 'object') - exports["JSJodaLocale"] = factory(require("js-joda")); - else - root["JSJodaLocale"] = factory(root["JSJoda"]); -})(this, function(__WEBPACK_EXTERNAL_MODULE_js_joda__) { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = "./src/js-joda-locale.js"); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ "./node_modules/cldr-data sync recursive ^\\.\\/.*$": -/*!**********************************************!*\ - !*** ./node_modules/cldr-data sync ^\.\/.*$ ***! - \**********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var map = { - "./availableLocales.json": "./node_modules/cldr-data/availableLocales.json", - "./main/de/ca-gregorian.json": "./node_modules/cldr-data/main/de/ca-gregorian.json", - "./main/de/timeZoneNames.json": "./node_modules/cldr-data/main/de/timeZoneNames.json", - "./supplemental/likelySubtags.json": "./node_modules/cldr-data/supplemental/likelySubtags.json", - "./supplemental/metaZones.json": "./node_modules/cldr-data/supplemental/metaZones.json", - "./supplemental/weekData.json": "./node_modules/cldr-data/supplemental/weekData.json" -}; - - -function webpackContext(req) { - var id = webpackContextResolve(req); - var module = __webpack_require__(id); - return module; -} -function webpackContextResolve(req) { - var id = map[req]; - if(!(id + 1)) { // check for number or string - var e = new Error('Cannot find module "' + req + '".'); - e.code = 'MODULE_NOT_FOUND'; - throw e; - } - return id; -} -webpackContext.keys = function webpackContextKeys() { - return Object.keys(map); -}; -webpackContext.resolve = webpackContextResolve; -module.exports = webpackContext; -webpackContext.id = "./node_modules/cldr-data sync recursive ^\\.\\/.*$"; - -/***/ }), - -/***/ "./node_modules/cldr-data/availableLocales.json": -/*!******************************************************!*\ - !*** ./node_modules/cldr-data/availableLocales.json ***! - \******************************************************/ -/*! exports provided: availableLocales, default */ -/***/ (function(module) { - -module.exports = {"availableLocales":["af","af-NA","am","ar","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","az","az-Latn","be","bg","bn","bn-IN","bs","bs-Latn","ca","ca-AD","ca-ES-VALENCIA","ca-FR","ca-IT","cs","cy","da","da-GL","de","de-AT","de-BE","de-CH","de-IT","de-LI","de-LU","el","el-CY","en","en-001","en-150","en-AG","en-AI","en-AS","en-AT","en-AU","en-BB","en-BE","en-BI","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CH","en-CK","en-CM","en-CX","en-CY","en-DE","en-DG","en-DK","en-DM","en-ER","en-FI","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IL","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NL","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SE","en-SG","en-SH","en-SI","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","es","es-419","es-AR","es-BO","es-BR","es-BZ","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et","eu","fa","fa-AF","fi","fil","fo","fo-DK","fr","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","ga","gl","gu","he","hi","hr","hr-BA","hu","hy","id","is","it","it-CH","it-SM","it-VA","ja","ka","kk","km","kn","ko","ko-KP","ky","lo","lt","lv","mk","ml","mn","mr","ms","ms-BN","ms-SG","my","nb","nb-SJ","ne","ne-IN","nl","nl-AW","nl-BE","nl-BQ","nl-CW","nl-SR","nl-SX","pa","pa-Guru","pl","pt","pt-AO","pt-CH","pt-CV","pt-GQ","pt-GW","pt-LU","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","ro","ro-MD","root","ru","ru-BY","ru-KG","ru-KZ","ru-MD","ru-UA","si","sk","sl","sq","sq-MK","sq-XK","sr","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-XK","sv","sv-AX","sv-FI","sw","sw-CD","sw-KE","sw-UG","ta","ta-LK","ta-MY","ta-SG","te","th","to","tr","tr-CY","uk","ur","ur-IN","uz","uz-Latn","vi","yue-Hant","zh","zh-Hans","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zu"]}; - -/***/ }), - -/***/ "./node_modules/cldr-data/main/de/ca-gregorian.json": -/*!**********************************************************!*\ - !*** ./node_modules/cldr-data/main/de/ca-gregorian.json ***! - \**********************************************************/ -/*! exports provided: main, default */ -/***/ (function(module) { - -module.exports = {"main":{"de":{"identity":{"version":{"_number":"$Revision: 13711 $","_cldrVersion":"32"},"language":"de"},"dates":{"calendars":{"gregorian":{"months":{"format":{"abbreviated":{"1":"Jan.","2":"Feb.","3":"März","4":"Apr.","5":"Mai","6":"Juni","7":"Juli","8":"Aug.","9":"Sep.","10":"Okt.","11":"Nov.","12":"Dez."},"narrow":{"1":"J","2":"F","3":"M","4":"A","5":"M","6":"J","7":"J","8":"A","9":"S","10":"O","11":"N","12":"D"},"wide":{"1":"Januar","2":"Februar","3":"März","4":"April","5":"Mai","6":"Juni","7":"Juli","8":"August","9":"September","10":"Oktober","11":"November","12":"Dezember"}},"stand-alone":{"abbreviated":{"1":"Jan","2":"Feb","3":"Mär","4":"Apr","5":"Mai","6":"Jun","7":"Jul","8":"Aug","9":"Sep","10":"Okt","11":"Nov","12":"Dez"},"narrow":{"1":"J","2":"F","3":"M","4":"A","5":"M","6":"J","7":"J","8":"A","9":"S","10":"O","11":"N","12":"D"},"wide":{"1":"Januar","2":"Februar","3":"März","4":"April","5":"Mai","6":"Juni","7":"Juli","8":"August","9":"September","10":"Oktober","11":"November","12":"Dezember"}}},"days":{"format":{"abbreviated":{"sun":"So.","mon":"Mo.","tue":"Di.","wed":"Mi.","thu":"Do.","fri":"Fr.","sat":"Sa."},"narrow":{"sun":"S","mon":"M","tue":"D","wed":"M","thu":"D","fri":"F","sat":"S"},"short":{"sun":"So.","mon":"Mo.","tue":"Di.","wed":"Mi.","thu":"Do.","fri":"Fr.","sat":"Sa."},"wide":{"sun":"Sonntag","mon":"Montag","tue":"Dienstag","wed":"Mittwoch","thu":"Donnerstag","fri":"Freitag","sat":"Samstag"}},"stand-alone":{"abbreviated":{"sun":"So","mon":"Mo","tue":"Di","wed":"Mi","thu":"Do","fri":"Fr","sat":"Sa"},"narrow":{"sun":"S","mon":"M","tue":"D","wed":"M","thu":"D","fri":"F","sat":"S"},"short":{"sun":"So.","mon":"Mo.","tue":"Di.","wed":"Mi.","thu":"Do.","fri":"Fr.","sat":"Sa."},"wide":{"sun":"Sonntag","mon":"Montag","tue":"Dienstag","wed":"Mittwoch","thu":"Donnerstag","fri":"Freitag","sat":"Samstag"}}},"quarters":{"format":{"abbreviated":{"1":"Q1","2":"Q2","3":"Q3","4":"Q4"},"narrow":{"1":"1","2":"2","3":"3","4":"4"},"wide":{"1":"1. Quartal","2":"2. Quartal","3":"3. Quartal","4":"4. Quartal"}},"stand-alone":{"abbreviated":{"1":"Q1","2":"Q2","3":"Q3","4":"Q4"},"narrow":{"1":"1","2":"2","3":"3","4":"4"},"wide":{"1":"1. Quartal","2":"2. Quartal","3":"3. Quartal","4":"4. Quartal"}}},"dayPeriods":{"format":{"abbreviated":{"midnight":"Mitternacht","am":"AM","pm":"PM","morning1":"morgens","morning2":"vormittags","afternoon1":"mittags","afternoon2":"nachmittags","evening1":"abends","night1":"nachts"},"narrow":{"midnight":"Mitternacht","am":"vm.","pm":"nm.","morning1":"morgens","morning2":"vormittags","afternoon1":"mittags","afternoon2":"nachmittags","evening1":"abends","night1":"nachts"},"wide":{"midnight":"Mitternacht","am":"AM","pm":"PM","morning1":"morgens","morning2":"vormittags","afternoon1":"mittags","afternoon2":"nachmittags","evening1":"abends","night1":"nachts"}},"stand-alone":{"abbreviated":{"midnight":"Mitternacht","am":"vorm.","pm":"nachm.","morning1":"Morgen","morning2":"Vormittag","afternoon1":"Mittag","afternoon2":"Nachmittag","evening1":"Abend","night1":"Nacht"},"narrow":{"midnight":"Mitternacht","am":"vorm.","pm":"nachm.","morning1":"Morgen","morning2":"Vormittag","afternoon1":"Mittag","afternoon2":"Nachmittag","evening1":"Abend","night1":"Nacht"},"wide":{"midnight":"Mitternacht","am":"vorm.","pm":"nachm.","morning1":"Morgen","morning2":"Vormittag","afternoon1":"Mittag","afternoon2":"Nachmittag","evening1":"Abend","night1":"Nacht"}}},"eras":{"eraNames":{"0":"v. Chr.","1":"n. Chr.","0-alt-variant":"vor unserer Zeitrechnung","1-alt-variant":"unserer Zeitrechnung"},"eraAbbr":{"0":"v. Chr.","1":"n. Chr.","0-alt-variant":"v. u. Z.","1-alt-variant":"u. Z."},"eraNarrow":{"0":"v. Chr.","1":"n. Chr.","0-alt-variant":"v. u. Z.","1-alt-variant":"u. Z."}},"dateFormats":{"full":"EEEE, d. MMMM y","long":"d. MMMM y","medium":"dd.MM.y","short":"dd.MM.yy"},"timeFormats":{"full":"HH:mm:ss zzzz","long":"HH:mm:ss z","medium":"HH:mm:ss","short":"HH:mm"},"dateTimeFormats":{"full":"{1} 'um' {0}","long":"{1} 'um' {0}","medium":"{1}, {0}","short":"{1}, {0}","availableFormats":{"Bh":"h B","Bhm":"h:mm B","Bhms":"h:mm:ss B","d":"d","E":"ccc","EBhm":"E h:mm B","EBhms":"E h:mm:ss B","Ed":"E, d.","Ehm":"E h:mm a","EHm":"E, HH:mm","Ehms":"E, h:mm:ss a","EHms":"E, HH:mm:ss","Gy":"y G","GyMMM":"MMM y G","GyMMMd":"d. MMM y G","GyMMMEd":"E, d. MMM y G","h":"h 'Uhr' a","H":"HH 'Uhr'","hm":"h:mm a","Hm":"HH:mm","hms":"h:mm:ss a","Hms":"HH:mm:ss","hmsv":"h:mm:ss a v","Hmsv":"HH:mm:ss v","hmv":"h:mm a v","Hmv":"HH:mm v","M":"L","Md":"d.M.","MEd":"E, d.M.","MMd":"d.MM.","MMdd":"dd.MM.","MMM":"LLL","MMMd":"d. MMM","MMMEd":"E, d. MMM","MMMMd":"d. MMMM","MMMMEd":"E, d. MMMM","MMMMW-count-one":"'Woche' W 'im' MMM","MMMMW-count-other":"'Woche' W 'im' MMM","ms":"mm:ss","y":"y","yM":"M.y","yMd":"d.M.y","yMEd":"E, d.M.y","yMM":"MM.y","yMMdd":"dd.MM.y","yMMM":"MMM y","yMMMd":"d. MMM y","yMMMEd":"E, d. MMM y","yMMMM":"MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","yw-count-one":"'Woche' w 'des' 'Jahres' Y","yw-count-other":"'Woche' w 'des' 'Jahres' Y"},"appendItems":{"Day":"{0} ({2}: {1})","Day-Of-Week":"{0} {1}","Era":"{1} {0}","Hour":"{0} ({2}: {1})","Minute":"{0} ({2}: {1})","Month":"{0} ({2}: {1})","Quarter":"{0} ({2}: {1})","Second":"{0} ({2}: {1})","Timezone":"{0} {1}","Week":"{0} ({2}: {1})","Year":"{1} {0}"},"intervalFormats":{"intervalFormatFallback":"{0} – {1}","d":{"d":"d.–d."},"h":{"a":"h 'Uhr' a – h 'Uhr' a","h":"h – h 'Uhr' a"},"H":{"H":"HH–HH 'Uhr'"},"hm":{"a":"h:mm a – h:mm a","h":"h:mm–h:mm a","m":"h:mm–h:mm a"},"Hm":{"H":"HH:mm–HH:mm 'Uhr'","m":"HH:mm–HH:mm 'Uhr'"},"hmv":{"a":"h:mm a – h:mm a v","h":"h:mm–h:mm a v","m":"h:mm–h:mm a v"},"Hmv":{"H":"HH:mm–HH:mm 'Uhr' v","m":"HH:mm–HH:mm 'Uhr' v"},"hv":{"a":"h a – h a v","h":"h–h a v"},"Hv":{"H":"HH–HH 'Uhr' v"},"M":{"M":"M.–M."},"Md":{"d":"dd.MM. – dd.MM.","M":"dd.MM. – dd.MM."},"MEd":{"d":"E, dd.MM. – E, dd.MM.","M":"E, dd.MM. – E, dd.MM."},"MMM":{"M":"MMM–MMM"},"MMMd":{"d":"d.–d. MMM","M":"d. MMM – d. MMM"},"MMMEd":{"d":"E, d. – E, d. MMM","M":"E, d. MMM – E, d. MMM"},"MMMM":{"M":"LLLL–LLLL"},"y":{"y":"y–y"},"yM":{"M":"MM.y – MM.y","y":"MM.y – MM.y"},"yMd":{"d":"dd.MM.y – dd.MM.y","M":"dd.MM.y – dd.MM.y","y":"dd.MM.y – dd.MM.y"},"yMEd":{"d":"E, dd.MM.y – E, dd.MM.y","M":"E, dd.MM.y – E, dd.MM.y","y":"E, dd.MM.y – E, dd.MM.y"},"yMMM":{"M":"MMM–MMM y","y":"MMM y – MMM y"},"yMMMd":{"d":"d.–d. MMM y","M":"d. MMM – d. MMM y","y":"d. MMM y – d. MMM y"},"yMMMEd":{"d":"E, d. – E, d. MMM y","M":"E, d. MMM – E, d. MMM y","y":"E, d. MMM y – E, d. MMM y"},"yMMMM":{"M":"MMMM–MMMM y","y":"MMMM y – MMMM y"}}}}}}}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/main/de/timeZoneNames.json": -/*!***********************************************************!*\ - !*** ./node_modules/cldr-data/main/de/timeZoneNames.json ***! - \***********************************************************/ -/*! exports provided: main, default */ -/***/ (function(module) { - -module.exports = {"main":{"de":{"identity":{"version":{"_number":"$Revision: 13711 $","_cldrVersion":"32"},"language":"de"},"dates":{"timeZoneNames":{"hourFormat":"+HH:mm;-HH:mm","gmtFormat":"GMT{0}","gmtZeroFormat":"GMT","regionFormat":"{0} Zeit","regionFormat-type-daylight":"{0} Sommerzeit","regionFormat-type-standard":"{0} Normalzeit","fallbackFormat":"{1} ({0})","zone":{"America":{"Adak":{"exemplarCity":"Adak"},"Anchorage":{"exemplarCity":"Anchorage"},"Anguilla":{"exemplarCity":"Anguilla"},"Antigua":{"exemplarCity":"Antigua"},"Araguaina":{"exemplarCity":"Araguaina"},"Argentina":{"Rio_Gallegos":{"exemplarCity":"Rio Gallegos"},"San_Juan":{"exemplarCity":"San Juan"},"Ushuaia":{"exemplarCity":"Ushuaia"},"La_Rioja":{"exemplarCity":"La Rioja"},"San_Luis":{"exemplarCity":"San Luis"},"Salta":{"exemplarCity":"Salta"},"Tucuman":{"exemplarCity":"Tucuman"}},"Aruba":{"exemplarCity":"Aruba"},"Asuncion":{"exemplarCity":"Asunción"},"Bahia":{"exemplarCity":"Bahia"},"Bahia_Banderas":{"exemplarCity":"Bahia Banderas"},"Barbados":{"exemplarCity":"Barbados"},"Belem":{"exemplarCity":"Belem"},"Belize":{"exemplarCity":"Belize"},"Blanc-Sablon":{"exemplarCity":"Blanc-Sablon"},"Boa_Vista":{"exemplarCity":"Boa Vista"},"Bogota":{"exemplarCity":"Bogotá"},"Boise":{"exemplarCity":"Boise"},"Buenos_Aires":{"exemplarCity":"Buenos Aires"},"Cambridge_Bay":{"exemplarCity":"Cambridge Bay"},"Campo_Grande":{"exemplarCity":"Campo Grande"},"Cancun":{"exemplarCity":"Cancún"},"Caracas":{"exemplarCity":"Caracas"},"Catamarca":{"exemplarCity":"Catamarca"},"Cayenne":{"exemplarCity":"Cayenne"},"Cayman":{"exemplarCity":"Kaimaninseln"},"Chicago":{"exemplarCity":"Chicago"},"Chihuahua":{"exemplarCity":"Chihuahua"},"Coral_Harbour":{"exemplarCity":"Atikokan"},"Cordoba":{"exemplarCity":"Córdoba"},"Costa_Rica":{"exemplarCity":"Costa Rica"},"Creston":{"exemplarCity":"Creston"},"Cuiaba":{"exemplarCity":"Cuiaba"},"Curacao":{"exemplarCity":"Curaçao"},"Danmarkshavn":{"exemplarCity":"Danmarkshavn"},"Dawson":{"exemplarCity":"Dawson"},"Dawson_Creek":{"exemplarCity":"Dawson Creek"},"Denver":{"exemplarCity":"Denver"},"Detroit":{"exemplarCity":"Detroit"},"Dominica":{"exemplarCity":"Dominica"},"Edmonton":{"exemplarCity":"Edmonton"},"Eirunepe":{"exemplarCity":"Eirunepe"},"El_Salvador":{"exemplarCity":"El Salvador"},"Fort_Nelson":{"exemplarCity":"Fort Nelson"},"Fortaleza":{"exemplarCity":"Fortaleza"},"Glace_Bay":{"exemplarCity":"Glace Bay"},"Godthab":{"exemplarCity":"Nuuk"},"Goose_Bay":{"exemplarCity":"Goose Bay"},"Grand_Turk":{"exemplarCity":"Grand Turk"},"Grenada":{"exemplarCity":"Grenada"},"Guadeloupe":{"exemplarCity":"Guadeloupe"},"Guatemala":{"exemplarCity":"Guatemala"},"Guayaquil":{"exemplarCity":"Guayaquil"},"Guyana":{"exemplarCity":"Guyana"},"Halifax":{"exemplarCity":"Halifax"},"Havana":{"exemplarCity":"Havanna"},"Hermosillo":{"exemplarCity":"Hermosillo"},"Indiana":{"Vincennes":{"exemplarCity":"Vincennes, Indiana"},"Petersburg":{"exemplarCity":"Petersburg, Indiana"},"Tell_City":{"exemplarCity":"Tell City, Indiana"},"Knox":{"exemplarCity":"Knox, Indiana"},"Winamac":{"exemplarCity":"Winamac, Indiana"},"Marengo":{"exemplarCity":"Marengo, Indiana"},"Vevay":{"exemplarCity":"Vevay, Indiana"}},"Indianapolis":{"exemplarCity":"Indianapolis"},"Inuvik":{"exemplarCity":"Inuvik"},"Iqaluit":{"exemplarCity":"Iqaluit"},"Jamaica":{"exemplarCity":"Jamaika"},"Jujuy":{"exemplarCity":"Jujuy"},"Juneau":{"exemplarCity":"Juneau"},"Kentucky":{"Monticello":{"exemplarCity":"Monticello, Kentucky"}},"Kralendijk":{"exemplarCity":"Kralendijk"},"La_Paz":{"exemplarCity":"La Paz"},"Lima":{"exemplarCity":"Lima"},"Los_Angeles":{"exemplarCity":"Los Angeles"},"Louisville":{"exemplarCity":"Louisville"},"Lower_Princes":{"exemplarCity":"Lower Prince’s Quarter"},"Maceio":{"exemplarCity":"Maceio"},"Managua":{"exemplarCity":"Managua"},"Manaus":{"exemplarCity":"Manaus"},"Marigot":{"exemplarCity":"Marigot"},"Martinique":{"exemplarCity":"Martinique"},"Matamoros":{"exemplarCity":"Matamoros"},"Mazatlan":{"exemplarCity":"Mazatlan"},"Mendoza":{"exemplarCity":"Mendoza"},"Menominee":{"exemplarCity":"Menominee"},"Merida":{"exemplarCity":"Merida"},"Metlakatla":{"exemplarCity":"Metlakatla"},"Mexico_City":{"exemplarCity":"Mexiko-Stadt"},"Miquelon":{"exemplarCity":"Miquelon"},"Moncton":{"exemplarCity":"Moncton"},"Monterrey":{"exemplarCity":"Monterrey"},"Montevideo":{"exemplarCity":"Montevideo"},"Montserrat":{"exemplarCity":"Montserrat"},"Nassau":{"exemplarCity":"Nassau"},"New_York":{"exemplarCity":"New York"},"Nipigon":{"exemplarCity":"Nipigon"},"Nome":{"exemplarCity":"Nome"},"Noronha":{"exemplarCity":"Noronha"},"North_Dakota":{"Beulah":{"exemplarCity":"Beulah, North Dakota"},"New_Salem":{"exemplarCity":"New Salem, North Dakota"},"Center":{"exemplarCity":"Center, North Dakota"}},"Ojinaga":{"exemplarCity":"Ojinaga"},"Panama":{"exemplarCity":"Panama"},"Pangnirtung":{"exemplarCity":"Pangnirtung"},"Paramaribo":{"exemplarCity":"Paramaribo"},"Phoenix":{"exemplarCity":"Phoenix"},"Port-au-Prince":{"exemplarCity":"Port-au-Prince"},"Port_of_Spain":{"exemplarCity":"Port of Spain"},"Porto_Velho":{"exemplarCity":"Porto Velho"},"Puerto_Rico":{"exemplarCity":"Puerto Rico"},"Punta_Arenas":{"exemplarCity":"Punta Arenas"},"Rainy_River":{"exemplarCity":"Rainy River"},"Rankin_Inlet":{"exemplarCity":"Rankin Inlet"},"Recife":{"exemplarCity":"Recife"},"Regina":{"exemplarCity":"Regina"},"Resolute":{"exemplarCity":"Resolute"},"Rio_Branco":{"exemplarCity":"Rio Branco"},"Santa_Isabel":{"exemplarCity":"Santa Isabel"},"Santarem":{"exemplarCity":"Santarem"},"Santiago":{"exemplarCity":"Santiago"},"Santo_Domingo":{"exemplarCity":"Santo Domingo"},"Sao_Paulo":{"exemplarCity":"São Paulo"},"Scoresbysund":{"exemplarCity":"Ittoqqortoormiit"},"Sitka":{"exemplarCity":"Sitka"},"St_Barthelemy":{"exemplarCity":"Saint-Barthélemy"},"St_Johns":{"exemplarCity":"St. John’s"},"St_Kitts":{"exemplarCity":"St. Kitts"},"St_Lucia":{"exemplarCity":"St. Lucia"},"St_Thomas":{"exemplarCity":"St. Thomas"},"St_Vincent":{"exemplarCity":"St. Vincent"},"Swift_Current":{"exemplarCity":"Swift Current"},"Tegucigalpa":{"exemplarCity":"Tegucigalpa"},"Thule":{"exemplarCity":"Thule"},"Thunder_Bay":{"exemplarCity":"Thunder Bay"},"Tijuana":{"exemplarCity":"Tijuana"},"Toronto":{"exemplarCity":"Toronto"},"Tortola":{"exemplarCity":"Tortola"},"Vancouver":{"exemplarCity":"Vancouver"},"Whitehorse":{"exemplarCity":"Whitehorse"},"Winnipeg":{"exemplarCity":"Winnipeg"},"Yakutat":{"exemplarCity":"Yakutat"},"Yellowknife":{"exemplarCity":"Yellowknife"}},"Atlantic":{"Azores":{"exemplarCity":"Azoren"},"Bermuda":{"exemplarCity":"Bermudas"},"Canary":{"exemplarCity":"Kanaren"},"Cape_Verde":{"exemplarCity":"Cabo Verde"},"Faeroe":{"exemplarCity":"Färöer"},"Madeira":{"exemplarCity":"Madeira"},"Reykjavik":{"exemplarCity":"Reyk­ja­vík"},"South_Georgia":{"exemplarCity":"Südgeorgien"},"St_Helena":{"exemplarCity":"St. Helena"},"Stanley":{"exemplarCity":"Stanley"}},"Europe":{"Amsterdam":{"exemplarCity":"Amsterdam"},"Andorra":{"exemplarCity":"Andorra"},"Astrakhan":{"exemplarCity":"Astrachan"},"Athens":{"exemplarCity":"Athen"},"Belgrade":{"exemplarCity":"Belgrad"},"Berlin":{"exemplarCity":"Berlin"},"Bratislava":{"exemplarCity":"Bratislava"},"Brussels":{"exemplarCity":"Brüssel"},"Bucharest":{"exemplarCity":"Bukarest"},"Budapest":{"exemplarCity":"Budapest"},"Busingen":{"exemplarCity":"Büsingen"},"Chisinau":{"exemplarCity":"Kischinau"},"Copenhagen":{"exemplarCity":"Kopenhagen"},"Dublin":{"long":{"daylight":"Irische Sommerzeit"},"exemplarCity":"Dublin"},"Gibraltar":{"exemplarCity":"Gibraltar"},"Guernsey":{"exemplarCity":"Guernsey"},"Helsinki":{"exemplarCity":"Helsinki"},"Isle_of_Man":{"exemplarCity":"Isle of Man"},"Istanbul":{"exemplarCity":"Istanbul"},"Jersey":{"exemplarCity":"Jersey"},"Kaliningrad":{"exemplarCity":"Kaliningrad"},"Kiev":{"exemplarCity":"Kiew"},"Kirov":{"exemplarCity":"Kirow"},"Lisbon":{"exemplarCity":"Lissabon"},"Ljubljana":{"exemplarCity":"Ljubljana"},"London":{"long":{"daylight":"Britische Sommerzeit"},"exemplarCity":"London"},"Luxembourg":{"exemplarCity":"Luxemburg"},"Madrid":{"exemplarCity":"Madrid"},"Malta":{"exemplarCity":"Malta"},"Mariehamn":{"exemplarCity":"Mariehamn"},"Minsk":{"exemplarCity":"Minsk"},"Monaco":{"exemplarCity":"Monaco"},"Moscow":{"exemplarCity":"Moskau"},"Oslo":{"exemplarCity":"Oslo"},"Paris":{"exemplarCity":"Paris"},"Podgorica":{"exemplarCity":"Podgorica"},"Prague":{"exemplarCity":"Prag"},"Riga":{"exemplarCity":"Riga"},"Rome":{"exemplarCity":"Rom"},"Samara":{"exemplarCity":"Samara"},"San_Marino":{"exemplarCity":"San Marino"},"Sarajevo":{"exemplarCity":"Sarajevo"},"Saratov":{"exemplarCity":"Saratow"},"Simferopol":{"exemplarCity":"Simferopol"},"Skopje":{"exemplarCity":"Skopje"},"Sofia":{"exemplarCity":"Sofia"},"Stockholm":{"exemplarCity":"Stockholm"},"Tallinn":{"exemplarCity":"Tallinn"},"Tirane":{"exemplarCity":"Tirana"},"Ulyanovsk":{"exemplarCity":"Uljanowsk"},"Uzhgorod":{"exemplarCity":"Uschgorod"},"Vaduz":{"exemplarCity":"Vaduz"},"Vatican":{"exemplarCity":"Vatikan"},"Vienna":{"exemplarCity":"Wien"},"Vilnius":{"exemplarCity":"Vilnius"},"Volgograd":{"exemplarCity":"Wolgograd"},"Warsaw":{"exemplarCity":"Warschau"},"Zagreb":{"exemplarCity":"Zagreb"},"Zaporozhye":{"exemplarCity":"Saporischja"},"Zurich":{"exemplarCity":"Zürich"}},"Africa":{"Abidjan":{"exemplarCity":"Abidjan"},"Accra":{"exemplarCity":"Accra"},"Addis_Ababa":{"exemplarCity":"Addis Abeba"},"Algiers":{"exemplarCity":"Algier"},"Asmera":{"exemplarCity":"Asmara"},"Bamako":{"exemplarCity":"Bamako"},"Bangui":{"exemplarCity":"Bangui"},"Banjul":{"exemplarCity":"Banjul"},"Bissau":{"exemplarCity":"Bissau"},"Blantyre":{"exemplarCity":"Blantyre"},"Brazzaville":{"exemplarCity":"Brazzaville"},"Bujumbura":{"exemplarCity":"Bujumbura"},"Cairo":{"exemplarCity":"Kairo"},"Casablanca":{"exemplarCity":"Casablanca"},"Ceuta":{"exemplarCity":"Ceuta"},"Conakry":{"exemplarCity":"Conakry"},"Dakar":{"exemplarCity":"Dakar"},"Dar_es_Salaam":{"exemplarCity":"Daressalam"},"Djibouti":{"exemplarCity":"Dschibuti"},"Douala":{"exemplarCity":"Douala"},"El_Aaiun":{"exemplarCity":"El Aaiún"},"Freetown":{"exemplarCity":"Freetown"},"Gaborone":{"exemplarCity":"Gaborone"},"Harare":{"exemplarCity":"Harare"},"Johannesburg":{"exemplarCity":"Johannesburg"},"Juba":{"exemplarCity":"Juba"},"Kampala":{"exemplarCity":"Kampala"},"Khartoum":{"exemplarCity":"Khartum"},"Kigali":{"exemplarCity":"Kigali"},"Kinshasa":{"exemplarCity":"Kinshasa"},"Lagos":{"exemplarCity":"Lagos"},"Libreville":{"exemplarCity":"Libreville"},"Lome":{"exemplarCity":"Lomé"},"Luanda":{"exemplarCity":"Luanda"},"Lubumbashi":{"exemplarCity":"Lubumbashi"},"Lusaka":{"exemplarCity":"Lusaka"},"Malabo":{"exemplarCity":"Malabo"},"Maputo":{"exemplarCity":"Maputo"},"Maseru":{"exemplarCity":"Maseru"},"Mbabane":{"exemplarCity":"Mbabane"},"Mogadishu":{"exemplarCity":"Mogadischu"},"Monrovia":{"exemplarCity":"Monrovia"},"Nairobi":{"exemplarCity":"Nairobi"},"Ndjamena":{"exemplarCity":"N’Djamena"},"Niamey":{"exemplarCity":"Niamey"},"Nouakchott":{"exemplarCity":"Nouakchott"},"Ouagadougou":{"exemplarCity":"Ouagadougou"},"Porto-Novo":{"exemplarCity":"Porto Novo"},"Sao_Tome":{"exemplarCity":"São Tomé"},"Tripoli":{"exemplarCity":"Tripolis"},"Tunis":{"exemplarCity":"Tunis"},"Windhoek":{"exemplarCity":"Windhoek"}},"Asia":{"Aden":{"exemplarCity":"Aden"},"Almaty":{"exemplarCity":"Almaty"},"Amman":{"exemplarCity":"Amman"},"Anadyr":{"exemplarCity":"Anadyr"},"Aqtau":{"exemplarCity":"Aqtau"},"Aqtobe":{"exemplarCity":"Aktobe"},"Ashgabat":{"exemplarCity":"Aşgabat"},"Atyrau":{"exemplarCity":"Atyrau"},"Baghdad":{"exemplarCity":"Bagdad"},"Bahrain":{"exemplarCity":"Bahrain"},"Baku":{"exemplarCity":"Baku"},"Bangkok":{"exemplarCity":"Bangkok"},"Barnaul":{"exemplarCity":"Barnaul"},"Beirut":{"exemplarCity":"Beirut"},"Bishkek":{"exemplarCity":"Bischkek"},"Brunei":{"exemplarCity":"Brunei"},"Calcutta":{"exemplarCity":"Kalkutta"},"Chita":{"exemplarCity":"Tschita"},"Choibalsan":{"exemplarCity":"Tschoibalsan"},"Colombo":{"exemplarCity":"Colombo"},"Damascus":{"exemplarCity":"Damaskus"},"Dhaka":{"exemplarCity":"Dhaka"},"Dili":{"exemplarCity":"Dili"},"Dubai":{"exemplarCity":"Dubai"},"Dushanbe":{"exemplarCity":"Duschanbe"},"Famagusta":{"exemplarCity":"Famagusta"},"Gaza":{"exemplarCity":"Gaza"},"Hebron":{"exemplarCity":"Hebron"},"Hong_Kong":{"exemplarCity":"Hongkong"},"Hovd":{"exemplarCity":"Chowd"},"Irkutsk":{"exemplarCity":"Irkutsk"},"Jakarta":{"exemplarCity":"Jakarta"},"Jayapura":{"exemplarCity":"Jayapura"},"Jerusalem":{"exemplarCity":"Jerusalem"},"Kabul":{"exemplarCity":"Kabul"},"Kamchatka":{"exemplarCity":"Kamtschatka"},"Karachi":{"exemplarCity":"Karatschi"},"Katmandu":{"exemplarCity":"Kathmandu"},"Khandyga":{"exemplarCity":"Chandyga"},"Krasnoyarsk":{"exemplarCity":"Krasnojarsk"},"Kuala_Lumpur":{"exemplarCity":"Kuala Lumpur"},"Kuching":{"exemplarCity":"Kuching"},"Kuwait":{"exemplarCity":"Kuwait"},"Macau":{"exemplarCity":"Macao"},"Magadan":{"exemplarCity":"Magadan"},"Makassar":{"exemplarCity":"Makassar"},"Manila":{"exemplarCity":"Manila"},"Muscat":{"exemplarCity":"Maskat"},"Nicosia":{"exemplarCity":"Nikosia"},"Novokuznetsk":{"exemplarCity":"Nowokuznetsk"},"Novosibirsk":{"exemplarCity":"Nowosibirsk"},"Omsk":{"exemplarCity":"Omsk"},"Oral":{"exemplarCity":"Oral"},"Phnom_Penh":{"exemplarCity":"Phnom Penh"},"Pontianak":{"exemplarCity":"Pontianak"},"Pyongyang":{"exemplarCity":"Pjöngjang"},"Qatar":{"exemplarCity":"Katar"},"Qyzylorda":{"exemplarCity":"Qysylorda"},"Rangoon":{"exemplarCity":"Rangun"},"Riyadh":{"exemplarCity":"Riad"},"Saigon":{"exemplarCity":"Ho-Chi-Minh-Stadt"},"Sakhalin":{"exemplarCity":"Sachalin"},"Samarkand":{"exemplarCity":"Samarkand"},"Seoul":{"exemplarCity":"Seoul"},"Shanghai":{"exemplarCity":"Shanghai"},"Singapore":{"exemplarCity":"Singapur"},"Srednekolymsk":{"exemplarCity":"Srednekolymsk"},"Taipei":{"exemplarCity":"Taipeh"},"Tashkent":{"exemplarCity":"Taschkent"},"Tbilisi":{"exemplarCity":"Tiflis"},"Tehran":{"exemplarCity":"Teheran"},"Thimphu":{"exemplarCity":"Thimphu"},"Tokyo":{"exemplarCity":"Tokio"},"Tomsk":{"exemplarCity":"Tomsk"},"Ulaanbaatar":{"exemplarCity":"Ulaanbaatar"},"Urumqi":{"exemplarCity":"Ürümqi"},"Ust-Nera":{"exemplarCity":"Ust-Nera"},"Vientiane":{"exemplarCity":"Vientiane"},"Vladivostok":{"exemplarCity":"Wladiwostok"},"Yakutsk":{"exemplarCity":"Jakutsk"},"Yekaterinburg":{"exemplarCity":"Jekaterinburg"},"Yerevan":{"exemplarCity":"Eriwan"}},"Indian":{"Antananarivo":{"exemplarCity":"Antananarivo"},"Chagos":{"exemplarCity":"Chagos"},"Christmas":{"exemplarCity":"Weihnachtsinsel"},"Cocos":{"exemplarCity":"Cocos"},"Comoro":{"exemplarCity":"Komoren"},"Kerguelen":{"exemplarCity":"Kerguelen"},"Mahe":{"exemplarCity":"Mahe"},"Maldives":{"exemplarCity":"Malediven"},"Mauritius":{"exemplarCity":"Mauritius"},"Mayotte":{"exemplarCity":"Mayotte"},"Reunion":{"exemplarCity":"Réunion"}},"Australia":{"Adelaide":{"exemplarCity":"Adelaide"},"Brisbane":{"exemplarCity":"Brisbane"},"Broken_Hill":{"exemplarCity":"Broken Hill"},"Currie":{"exemplarCity":"Currie"},"Darwin":{"exemplarCity":"Darwin"},"Eucla":{"exemplarCity":"Eucla"},"Hobart":{"exemplarCity":"Hobart"},"Lindeman":{"exemplarCity":"Lindeman"},"Lord_Howe":{"exemplarCity":"Lord Howe"},"Melbourne":{"exemplarCity":"Melbourne"},"Perth":{"exemplarCity":"Perth"},"Sydney":{"exemplarCity":"Sydney"}},"Pacific":{"Apia":{"exemplarCity":"Apia"},"Auckland":{"exemplarCity":"Auckland"},"Bougainville":{"exemplarCity":"Bougainville"},"Chatham":{"exemplarCity":"Chatham"},"Easter":{"exemplarCity":"Osterinsel"},"Efate":{"exemplarCity":"Efate"},"Enderbury":{"exemplarCity":"Enderbury"},"Fakaofo":{"exemplarCity":"Fakaofo"},"Fiji":{"exemplarCity":"Fidschi"},"Funafuti":{"exemplarCity":"Funafuti"},"Galapagos":{"exemplarCity":"Galapagos"},"Gambier":{"exemplarCity":"Gambier"},"Guadalcanal":{"exemplarCity":"Guadalcanal"},"Guam":{"exemplarCity":"Guam"},"Honolulu":{"exemplarCity":"Honolulu"},"Johnston":{"exemplarCity":"Johnston"},"Kiritimati":{"exemplarCity":"Kiritimati"},"Kosrae":{"exemplarCity":"Kosrae"},"Kwajalein":{"exemplarCity":"Kwajalein"},"Majuro":{"exemplarCity":"Majuro"},"Marquesas":{"exemplarCity":"Marquesas"},"Midway":{"exemplarCity":"Midway"},"Nauru":{"exemplarCity":"Nauru"},"Niue":{"exemplarCity":"Niue"},"Norfolk":{"exemplarCity":"Norfolk"},"Noumea":{"exemplarCity":"Noumea"},"Pago_Pago":{"exemplarCity":"Pago Pago"},"Palau":{"exemplarCity":"Palau"},"Pitcairn":{"exemplarCity":"Pitcairn"},"Ponape":{"exemplarCity":"Pohnpei"},"Port_Moresby":{"exemplarCity":"Port Moresby"},"Rarotonga":{"exemplarCity":"Rarotonga"},"Saipan":{"exemplarCity":"Saipan"},"Tahiti":{"exemplarCity":"Tahiti"},"Tarawa":{"exemplarCity":"Tarawa"},"Tongatapu":{"exemplarCity":"Tongatapu"},"Truk":{"exemplarCity":"Chuuk"},"Wake":{"exemplarCity":"Wake"},"Wallis":{"exemplarCity":"Wallis"}},"Arctic":{"Longyearbyen":{"exemplarCity":"Longyearbyen"}},"Antarctica":{"Casey":{"exemplarCity":"Casey"},"Davis":{"exemplarCity":"Davis"},"DumontDUrville":{"exemplarCity":"Dumont d’Urville"},"Macquarie":{"exemplarCity":"Macquarie"},"Mawson":{"exemplarCity":"Mawson"},"McMurdo":{"exemplarCity":"McMurdo"},"Palmer":{"exemplarCity":"Palmer"},"Rothera":{"exemplarCity":"Rothera"},"Syowa":{"exemplarCity":"Syowa"},"Troll":{"exemplarCity":"Troll"},"Vostok":{"exemplarCity":"Wostok"}},"Etc":{"UTC":{"long":{"standard":"Koordinierte Weltzeit"},"short":{"standard":"UTC"}},"Unknown":{"exemplarCity":"Unbekannt"}}},"metazone":{"Acre":{"long":{"generic":"Acre-Zeit","standard":"Acre-Normalzeit","daylight":"Acre-Sommerzeit"}},"Afghanistan":{"long":{"standard":"Afghanistan-Zeit"}},"Africa_Central":{"long":{"standard":"Zentralafrikanische Zeit"}},"Africa_Eastern":{"long":{"standard":"Ostafrikanische Zeit"}},"Africa_Southern":{"long":{"standard":"Südafrikanische Zeit"}},"Africa_Western":{"long":{"generic":"Westafrikanische Zeit","standard":"Westafrikanische Normalzeit","daylight":"Westafrikanische Sommerzeit"}},"Alaska":{"long":{"generic":"Alaska-Zeit","standard":"Alaska-Normalzeit","daylight":"Alaska-Sommerzeit"}},"Almaty":{"long":{"generic":"Almaty-Zeit","standard":"Almaty-Normalzeit","daylight":"Almaty-Sommerzeit"}},"Amazon":{"long":{"generic":"Amazonas-Zeit","standard":"Amazonas-Normalzeit","daylight":"Amazonas-Sommerzeit"}},"America_Central":{"long":{"generic":"Nordamerikanische Inlandzeit","standard":"Nordamerikanische Inland-Normalzeit","daylight":"Nordamerikanische Inland-Sommerzeit"}},"America_Eastern":{"long":{"generic":"Nordamerikanische Ostküstenzeit","standard":"Nordamerikanische Ostküsten-Normalzeit","daylight":"Nordamerikanische Ostküsten-Sommerzeit"}},"America_Mountain":{"long":{"generic":"Rocky-Mountain-Zeit","standard":"Rocky Mountain-Normalzeit","daylight":"Rocky-Mountain-Sommerzeit"}},"America_Pacific":{"long":{"generic":"Nordamerikanische Westküstenzeit","standard":"Nordamerikanische Westküsten-Normalzeit","daylight":"Nordamerikanische Westküsten-Sommerzeit"}},"Anadyr":{"long":{"generic":"Anadyr Zeit","standard":"Anadyr Normalzeit","daylight":"Anadyr Sommerzeit"}},"Apia":{"long":{"generic":"Apia-Zeit","standard":"Apia-Normalzeit","daylight":"Apia-Sommerzeit"}},"Aqtau":{"long":{"generic":"Aqtau-Zeit","standard":"Aqtau-Normalzeit","daylight":"Aqtau-Sommerzeit"}},"Aqtobe":{"long":{"generic":"Aqtöbe-Zeit","standard":"Aqtöbe-Normalzeit","daylight":"Aqtöbe-Sommerzeit"}},"Arabian":{"long":{"generic":"Arabische Zeit","standard":"Arabische Normalzeit","daylight":"Arabische Sommerzeit"}},"Argentina":{"long":{"generic":"Argentinische Zeit","standard":"Argentinische Normalzeit","daylight":"Argentinische Sommerzeit"}},"Argentina_Western":{"long":{"generic":"Westargentinische Zeit","standard":"Westargentinische Normalzeit","daylight":"Westargentinische Sommerzeit"}},"Armenia":{"long":{"generic":"Armenische Zeit","standard":"Armenische Normalzeit","daylight":"Armenische Sommerzeit"}},"Atlantic":{"long":{"generic":"Atlantik-Zeit","standard":"Atlantik-Normalzeit","daylight":"Atlantik-Sommerzeit"}},"Australia_Central":{"long":{"generic":"Zentralaustralische Zeit","standard":"Zentralaustralische Normalzeit","daylight":"Zentralaustralische Sommerzeit"}},"Australia_CentralWestern":{"long":{"generic":"Zentral-/Westaustralische Zeit","standard":"Zentral-/Westaustralische Normalzeit","daylight":"Zentral-/Westaustralische Sommerzeit"}},"Australia_Eastern":{"long":{"generic":"Ostaustralische Zeit","standard":"Ostaustralische Normalzeit","daylight":"Ostaustralische Sommerzeit"}},"Australia_Western":{"long":{"generic":"Westaustralische Zeit","standard":"Westaustralische Normalzeit","daylight":"Westaustralische Sommerzeit"}},"Azerbaijan":{"long":{"generic":"Aserbaidschanische Zeit","standard":"Aserbeidschanische Normalzeit","daylight":"Aserbaidschanische Sommerzeit"}},"Azores":{"long":{"generic":"Azoren-Zeit","standard":"Azoren-Normalzeit","daylight":"Azoren-Sommerzeit"}},"Bangladesh":{"long":{"generic":"Bangladesch-Zeit","standard":"Bangladesch-Normalzeit","daylight":"Bangladesch-Sommerzeit"}},"Bhutan":{"long":{"standard":"Bhutan-Zeit"}},"Bolivia":{"long":{"standard":"Bolivianische Zeit"}},"Brasilia":{"long":{"generic":"Brasília-Zeit","standard":"Brasília-Normalzeit","daylight":"Brasília-Sommerzeit"}},"Brunei":{"long":{"standard":"Brunei-Zeit"}},"Cape_Verde":{"long":{"generic":"Cabo-Verde-Zeit","standard":"Cabo-Verde-Normalzeit","daylight":"Cabo-Verde-Sommerzeit"}},"Casey":{"long":{"standard":"Casey-Zeit"}},"Chamorro":{"long":{"standard":"Chamorro-Zeit"}},"Chatham":{"long":{"generic":"Chatham-Zeit","standard":"Chatham-Normalzeit","daylight":"Chatham-Sommerzeit"}},"Chile":{"long":{"generic":"Chilenische Zeit","standard":"Chilenische Normalzeit","daylight":"Chilenische Sommerzeit"}},"China":{"long":{"generic":"Chinesische Zeit","standard":"Chinesische Normalzeit","daylight":"Chinesische Sommerzeit"}},"Choibalsan":{"long":{"generic":"Tschoibalsan-Zeit","standard":"Tschoibalsan-Normalzeit","daylight":"Tschoibalsan-Sommerzeit"}},"Christmas":{"long":{"standard":"Weihnachtsinsel-Zeit"}},"Cocos":{"long":{"standard":"Kokosinseln-Zeit"}},"Colombia":{"long":{"generic":"Kolumbianische Zeit","standard":"Kolumbianische Normalzeit","daylight":"Kolumbianische Sommerzeit"}},"Cook":{"long":{"generic":"Cookinseln-Zeit","standard":"Cookinseln-Normalzeit","daylight":"Cookinseln-Sommerzeit"}},"Cuba":{"long":{"generic":"Kubanische Zeit","standard":"Kubanische Normalzeit","daylight":"Kubanische Sommerzeit"}},"Davis":{"long":{"standard":"Davis-Zeit"}},"DumontDUrville":{"long":{"standard":"Dumont-d’Urville-Zeit"}},"East_Timor":{"long":{"standard":"Osttimor-Zeit"}},"Easter":{"long":{"generic":"Osterinsel-Zeit","standard":"Osterinsel-Normalzeit","daylight":"Osterinsel-Sommerzeit"}},"Ecuador":{"long":{"standard":"Ecuadorianische Zeit"}},"Europe_Central":{"long":{"generic":"Mitteleuropäische Zeit","standard":"Mitteleuropäische Normalzeit","daylight":"Mitteleuropäische Sommerzeit"},"short":{"generic":"MEZ","standard":"MEZ","daylight":"MESZ"}},"Europe_Eastern":{"long":{"generic":"Osteuropäische Zeit","standard":"Osteuropäische Normalzeit","daylight":"Osteuropäische Sommerzeit"},"short":{"generic":"OEZ","standard":"OEZ","daylight":"OESZ"}},"Europe_Further_Eastern":{"long":{"standard":"Kaliningrader Zeit"}},"Europe_Western":{"long":{"generic":"Westeuropäische Zeit","standard":"Westeuropäische Normalzeit","daylight":"Westeuropäische Sommerzeit"},"short":{"generic":"WEZ","standard":"WEZ","daylight":"WESZ"}},"Falkland":{"long":{"generic":"Falklandinseln-Zeit","standard":"Falklandinseln-Normalzeit","daylight":"Falklandinseln-Sommerzeit"}},"Fiji":{"long":{"generic":"Fidschi-Zeit","standard":"Fidschi-Normalzeit","daylight":"Fidschi-Sommerzeit"}},"French_Guiana":{"long":{"standard":"Französisch-Guayana-Zeit"}},"French_Southern":{"long":{"standard":"Französische Süd- und Antarktisgebiete-Zeit"}},"Galapagos":{"long":{"standard":"Galapagos-Zeit"}},"Gambier":{"long":{"standard":"Gambier-Zeit"}},"Georgia":{"long":{"generic":"Georgische Zeit","standard":"Georgische Normalzeit","daylight":"Georgische Sommerzeit"}},"Gilbert_Islands":{"long":{"standard":"Gilbert-Inseln-Zeit"}},"GMT":{"long":{"standard":"Mittlere Greenwich-Zeit"}},"Greenland_Eastern":{"long":{"generic":"Ostgrönland-Zeit","standard":"Ostgrönland-Normalzeit","daylight":"Ostgrönland-Sommerzeit"}},"Greenland_Western":{"long":{"generic":"Westgrönland-Zeit","standard":"Westgrönland-Normalzeit","daylight":"Westgrönland-Sommerzeit"}},"Guam":{"long":{"standard":"Guam-Zeit"}},"Gulf":{"long":{"standard":"Golf-Zeit"}},"Guyana":{"long":{"standard":"Guyana-Zeit"}},"Hawaii_Aleutian":{"long":{"generic":"Hawaii-Aleuten-Zeit","standard":"Hawaii-Aleuten-Normalzeit","daylight":"Hawaii-Aleuten-Sommerzeit"}},"Hong_Kong":{"long":{"generic":"Hongkong-Zeit","standard":"Hongkong-Normalzeit","daylight":"Hongkong-Sommerzeit"}},"Hovd":{"long":{"generic":"Chowd-Zeit","standard":"Chowd-Normalzeit","daylight":"Chowd-Sommerzeit"}},"India":{"long":{"standard":"Indische Zeit"}},"Indian_Ocean":{"long":{"standard":"Indischer Ozean-Zeit"}},"Indochina":{"long":{"standard":"Indochina-Zeit"}},"Indonesia_Central":{"long":{"standard":"Zentralindonesische Zeit"}},"Indonesia_Eastern":{"long":{"standard":"Ostindonesische Zeit"}},"Indonesia_Western":{"long":{"standard":"Westindonesische Zeit"}},"Iran":{"long":{"generic":"Iranische Zeit","standard":"Iranische Normalzeit","daylight":"Iranische Sommerzeit"}},"Irkutsk":{"long":{"generic":"Irkutsk-Zeit","standard":"Irkutsk-Normalzeit","daylight":"Irkutsk-Sommerzeit"}},"Israel":{"long":{"generic":"Israelische Zeit","standard":"Israelische Normalzeit","daylight":"Israelische Sommerzeit"}},"Japan":{"long":{"generic":"Japanische Zeit","standard":"Japanische Normalzeit","daylight":"Japanische Sommerzeit"}},"Kamchatka":{"long":{"generic":"Kamtschatka-Zeit","standard":"Kamtschatka-Normalzeit","daylight":"Kamtschatka-Sommerzeit"}},"Kazakhstan_Eastern":{"long":{"standard":"Ostkasachische Zeit"}},"Kazakhstan_Western":{"long":{"standard":"Westkasachische Zeit"}},"Korea":{"long":{"generic":"Koreanische Zeit","standard":"Koreanische Normalzeit","daylight":"Koreanische Sommerzeit"}},"Kosrae":{"long":{"standard":"Kosrae-Zeit"}},"Krasnoyarsk":{"long":{"generic":"Krasnojarsk-Zeit","standard":"Krasnojarsk-Normalzeit","daylight":"Krasnojarsk-Sommerzeit"}},"Kyrgystan":{"long":{"standard":"Kirgisistan-Zeit"}},"Lanka":{"long":{"standard":"Sri-Lanka-Zeit"}},"Line_Islands":{"long":{"standard":"Linieninseln-Zeit"}},"Lord_Howe":{"long":{"generic":"Lord-Howe-Zeit","standard":"Lord-Howe-Normalzeit","daylight":"Lord-Howe-Sommerzeit"}},"Macau":{"long":{"generic":"Macau-Zeit","standard":"Macau-Normalzeit","daylight":"Macau-Sommerzeit"}},"Macquarie":{"long":{"standard":"Macquarieinsel-Zeit"}},"Magadan":{"long":{"generic":"Magadan-Zeit","standard":"Magadan-Normalzeit","daylight":"Magadan-Sommerzeit"}},"Malaysia":{"long":{"standard":"Malaysische Zeit"}},"Maldives":{"long":{"standard":"Malediven-Zeit"}},"Marquesas":{"long":{"standard":"Marquesas-Zeit"}},"Marshall_Islands":{"long":{"standard":"Marshallinseln-Zeit"}},"Mauritius":{"long":{"generic":"Mauritius-Zeit","standard":"Mauritius-Normalzeit","daylight":"Mauritius-Sommerzeit"}},"Mawson":{"long":{"standard":"Mawson-Zeit"}},"Mexico_Northwest":{"long":{"generic":"Mexiko Nordwestliche Zone-Zeit","standard":"Mexiko Nordwestliche Zone-Normalzeit","daylight":"Mexiko Nordwestliche Zone-Sommerzeit"}},"Mexico_Pacific":{"long":{"generic":"Mexiko Pazifikzone-Zeit","standard":"Mexiko Pazifikzone-Normalzeit","daylight":"Mexiko Pazifikzone-Sommerzeit"}},"Mongolia":{"long":{"generic":"Ulaanbaatar-Zeit","standard":"Ulaanbaatar-Normalzeit","daylight":"Ulaanbaatar-Sommerzeit"}},"Moscow":{"long":{"generic":"Moskauer Zeit","standard":"Moskauer Normalzeit","daylight":"Moskauer Sommerzeit"}},"Myanmar":{"long":{"standard":"Myanmar-Zeit"}},"Nauru":{"long":{"standard":"Nauru-Zeit"}},"Nepal":{"long":{"standard":"Nepalesische Zeit"}},"New_Caledonia":{"long":{"generic":"Neukaledonische Zeit","standard":"Neukaledonische Normalzeit","daylight":"Neukaledonische Sommerzeit"}},"New_Zealand":{"long":{"generic":"Neuseeland-Zeit","standard":"Neuseeland-Normalzeit","daylight":"Neuseeland-Sommerzeit"}},"Newfoundland":{"long":{"generic":"Neufundland-Zeit","standard":"Neufundland-Normalzeit","daylight":"Neufundland-Sommerzeit"}},"Niue":{"long":{"standard":"Niue-Zeit"}},"Norfolk":{"long":{"standard":"Norfolkinsel-Zeit"}},"Noronha":{"long":{"generic":"Fernando de Noronha-Zeit","standard":"Fernando de Noronha-Normalzeit","daylight":"Fernando de Noronha-Sommerzeit"}},"North_Mariana":{"long":{"standard":"Nördliche-Marianen-Zeit"}},"Novosibirsk":{"long":{"generic":"Nowosibirsk-Zeit","standard":"Nowosibirsk-Normalzeit","daylight":"Nowosibirsk-Sommerzeit"}},"Omsk":{"long":{"generic":"Omsk-Zeit","standard":"Omsk-Normalzeit","daylight":"Omsk-Sommerzeit"}},"Pakistan":{"long":{"generic":"Pakistanische Zeit","standard":"Pakistanische Normalzeit","daylight":"Pakistanische Sommerzeit"}},"Palau":{"long":{"standard":"Palau-Zeit"}},"Papua_New_Guinea":{"long":{"standard":"Papua-Neuguinea-Zeit"}},"Paraguay":{"long":{"generic":"Paraguayanische Zeit","standard":"Paraguayanische Normalzeit","daylight":"Paraguayanische Sommerzeit"}},"Peru":{"long":{"generic":"Peruanische Zeit","standard":"Peruanische Normalzeit","daylight":"Peruanische Sommerzeit"}},"Philippines":{"long":{"generic":"Philippinische Zeit","standard":"Philippinische Normalzeit","daylight":"Philippinische Sommerzeit"}},"Phoenix_Islands":{"long":{"standard":"Phoenixinseln-Zeit"}},"Pierre_Miquelon":{"long":{"generic":"Saint-Pierre-und-Miquelon-Zeit","standard":"Saint-Pierre-und-Miquelon-Normalzeit","daylight":"Saint-Pierre-und-Miquelon-Sommerzeit"}},"Pitcairn":{"long":{"standard":"Pitcairninseln-Zeit"}},"Ponape":{"long":{"standard":"Ponape-Zeit"}},"Pyongyang":{"long":{"standard":"Pjöngjang-Zeit"}},"Qyzylorda":{"long":{"generic":"Quysylorda-Zeit","standard":"Quysylorda-Normalzeit","daylight":"Qysylorda-Sommerzeit"}},"Reunion":{"long":{"standard":"Réunion-Zeit"}},"Rothera":{"long":{"standard":"Rothera-Zeit"}},"Sakhalin":{"long":{"generic":"Sachalin-Zeit","standard":"Sachalin-Normalzeit","daylight":"Sachalin-Sommerzeit"}},"Samara":{"long":{"generic":"Samara-Zeit","standard":"Samara-Normalzeit","daylight":"Samara-Sommerzeit"}},"Samoa":{"long":{"generic":"Samoa-Zeit","standard":"Samoa-Normalzeit","daylight":"Samoa-Sommerzeit"}},"Seychelles":{"long":{"standard":"Seychellen-Zeit"}},"Singapore":{"long":{"standard":"Singapur-Zeit"}},"Solomon":{"long":{"standard":"Salomoninseln-Zeit"}},"South_Georgia":{"long":{"standard":"Südgeorgische Zeit"}},"Suriname":{"long":{"standard":"Suriname-Zeit"}},"Syowa":{"long":{"standard":"Syowa-Zeit"}},"Tahiti":{"long":{"standard":"Tahiti-Zeit"}},"Taipei":{"long":{"generic":"Taipeh-Zeit","standard":"Taipeh-Normalzeit","daylight":"Taipeh-Sommerzeit"}},"Tajikistan":{"long":{"standard":"Tadschikistan-Zeit"}},"Tokelau":{"long":{"standard":"Tokelau-Zeit"}},"Tonga":{"long":{"generic":"Tonganische Zeit","standard":"Tonganische Normalzeit","daylight":"Tonganische Sommerzeit"}},"Truk":{"long":{"standard":"Chuuk-Zeit"}},"Turkmenistan":{"long":{"generic":"Turkmenistan-Zeit","standard":"Turkmenistan-Normalzeit","daylight":"Turkmenistan-Sommerzeit"}},"Tuvalu":{"long":{"standard":"Tuvalu-Zeit"}},"Uruguay":{"long":{"generic":"Uruguayanische Zeit","standard":"Uruguyanische Normalzeit","daylight":"Uruguayanische Sommerzeit"}},"Uzbekistan":{"long":{"generic":"Usbekistan-Zeit","standard":"Usbekistan-Normalzeit","daylight":"Usbekistan-Sommerzeit"}},"Vanuatu":{"long":{"generic":"Vanuatu-Zeit","standard":"Vanuatu-Normalzeit","daylight":"Vanuatu-Sommerzeit"}},"Venezuela":{"long":{"standard":"Venezuela-Zeit"}},"Vladivostok":{"long":{"generic":"Wladiwostok-Zeit","standard":"Wladiwostok-Normalzeit","daylight":"Wladiwostok-Sommerzeit"}},"Volgograd":{"long":{"generic":"Wolgograd-Zeit","standard":"Wolgograd-Normalzeit","daylight":"Wolgograd-Sommerzeit"}},"Vostok":{"long":{"standard":"Wostok-Zeit"}},"Wake":{"long":{"standard":"Wake-Insel-Zeit"}},"Wallis":{"long":{"standard":"Wallis-und-Futuna-Zeit"}},"Yakutsk":{"long":{"generic":"Jakutsk-Zeit","standard":"Jakutsk-Normalzeit","daylight":"Jakutsk-Sommerzeit"}},"Yekaterinburg":{"long":{"generic":"Jekaterinburg-Zeit","standard":"Jekaterinburg-Normalzeit","daylight":"Jekaterinburg-Sommerzeit"}}}}}}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/likelySubtags.json": -/*!****************************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/likelySubtags.json ***! - \****************************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13699 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"likelySubtags":{"aa":"aa-Latn-ET","aai":"aai-Latn-ZZ","aak":"aak-Latn-ZZ","aau":"aau-Latn-ZZ","ab":"ab-Cyrl-GE","abi":"abi-Latn-ZZ","abq":"abq-Cyrl-ZZ","abr":"abr-Latn-GH","abt":"abt-Latn-ZZ","aby":"aby-Latn-ZZ","acd":"acd-Latn-ZZ","ace":"ace-Latn-ID","ach":"ach-Latn-UG","ada":"ada-Latn-GH","ade":"ade-Latn-ZZ","adj":"adj-Latn-ZZ","ady":"ady-Cyrl-RU","adz":"adz-Latn-ZZ","ae":"ae-Avst-IR","aeb":"aeb-Arab-TN","aey":"aey-Latn-ZZ","af":"af-Latn-ZA","agc":"agc-Latn-ZZ","agd":"agd-Latn-ZZ","agg":"agg-Latn-ZZ","agm":"agm-Latn-ZZ","ago":"ago-Latn-ZZ","agq":"agq-Latn-CM","aha":"aha-Latn-ZZ","ahl":"ahl-Latn-ZZ","aho":"aho-Ahom-IN","ajg":"ajg-Latn-ZZ","ak":"ak-Latn-GH","akk":"akk-Xsux-IQ","ala":"ala-Latn-ZZ","ali":"ali-Latn-ZZ","aln":"aln-Latn-XK","alt":"alt-Cyrl-RU","am":"am-Ethi-ET","amm":"amm-Latn-ZZ","amn":"amn-Latn-ZZ","amo":"amo-Latn-NG","amp":"amp-Latn-ZZ","anc":"anc-Latn-ZZ","ank":"ank-Latn-ZZ","ann":"ann-Latn-ZZ","any":"any-Latn-ZZ","aoj":"aoj-Latn-ZZ","aom":"aom-Latn-ZZ","aoz":"aoz-Latn-ID","apc":"apc-Arab-ZZ","apd":"apd-Arab-TG","ape":"ape-Latn-ZZ","apr":"apr-Latn-ZZ","aps":"aps-Latn-ZZ","apz":"apz-Latn-ZZ","ar":"ar-Arab-EG","arc":"arc-Armi-IR","arc-Nbat":"arc-Nbat-JO","arc-Palm":"arc-Palm-SY","arh":"arh-Latn-ZZ","arn":"arn-Latn-CL","aro":"aro-Latn-BO","arq":"arq-Arab-DZ","ary":"ary-Arab-MA","arz":"arz-Arab-EG","as":"as-Beng-IN","asa":"asa-Latn-TZ","ase":"ase-Sgnw-US","asg":"asg-Latn-ZZ","aso":"aso-Latn-ZZ","ast":"ast-Latn-ES","ata":"ata-Latn-ZZ","atg":"atg-Latn-ZZ","atj":"atj-Latn-CA","auy":"auy-Latn-ZZ","av":"av-Cyrl-RU","avl":"avl-Arab-ZZ","avn":"avn-Latn-ZZ","avt":"avt-Latn-ZZ","avu":"avu-Latn-ZZ","awa":"awa-Deva-IN","awb":"awb-Latn-ZZ","awo":"awo-Latn-ZZ","awx":"awx-Latn-ZZ","ay":"ay-Latn-BO","ayb":"ayb-Latn-ZZ","az":"az-Latn-AZ","az-Arab":"az-Arab-IR","az-IQ":"az-Arab-IQ","az-IR":"az-Arab-IR","az-RU":"az-Cyrl-RU","ba":"ba-Cyrl-RU","bal":"bal-Arab-PK","ban":"ban-Latn-ID","bap":"bap-Deva-NP","bar":"bar-Latn-AT","bas":"bas-Latn-CM","bav":"bav-Latn-ZZ","bax":"bax-Bamu-CM","bba":"bba-Latn-ZZ","bbb":"bbb-Latn-ZZ","bbc":"bbc-Latn-ID","bbd":"bbd-Latn-ZZ","bbj":"bbj-Latn-CM","bbp":"bbp-Latn-ZZ","bbr":"bbr-Latn-ZZ","bcf":"bcf-Latn-ZZ","bch":"bch-Latn-ZZ","bci":"bci-Latn-CI","bcm":"bcm-Latn-ZZ","bcn":"bcn-Latn-ZZ","bco":"bco-Latn-ZZ","bcq":"bcq-Ethi-ZZ","bcu":"bcu-Latn-ZZ","bdd":"bdd-Latn-ZZ","be":"be-Cyrl-BY","bef":"bef-Latn-ZZ","beh":"beh-Latn-ZZ","bej":"bej-Arab-SD","bem":"bem-Latn-ZM","bet":"bet-Latn-ZZ","bew":"bew-Latn-ID","bex":"bex-Latn-ZZ","bez":"bez-Latn-TZ","bfd":"bfd-Latn-CM","bfq":"bfq-Taml-IN","bft":"bft-Arab-PK","bfy":"bfy-Deva-IN","bg":"bg-Cyrl-BG","bgc":"bgc-Deva-IN","bgn":"bgn-Arab-PK","bgx":"bgx-Grek-TR","bhb":"bhb-Deva-IN","bhg":"bhg-Latn-ZZ","bhi":"bhi-Deva-IN","bhk":"bhk-Latn-PH","bhl":"bhl-Latn-ZZ","bho":"bho-Deva-IN","bhy":"bhy-Latn-ZZ","bi":"bi-Latn-VU","bib":"bib-Latn-ZZ","big":"big-Latn-ZZ","bik":"bik-Latn-PH","bim":"bim-Latn-ZZ","bin":"bin-Latn-NG","bio":"bio-Latn-ZZ","biq":"biq-Latn-ZZ","bjh":"bjh-Latn-ZZ","bji":"bji-Ethi-ZZ","bjj":"bjj-Deva-IN","bjn":"bjn-Latn-ID","bjo":"bjo-Latn-ZZ","bjr":"bjr-Latn-ZZ","bjt":"bjt-Latn-SN","bjz":"bjz-Latn-ZZ","bkc":"bkc-Latn-ZZ","bkm":"bkm-Latn-CM","bkq":"bkq-Latn-ZZ","bku":"bku-Latn-PH","bkv":"bkv-Latn-ZZ","blt":"blt-Tavt-VN","bm":"bm-Latn-ML","bmh":"bmh-Latn-ZZ","bmk":"bmk-Latn-ZZ","bmq":"bmq-Latn-ML","bmu":"bmu-Latn-ZZ","bn":"bn-Beng-BD","bng":"bng-Latn-ZZ","bnm":"bnm-Latn-ZZ","bnp":"bnp-Latn-ZZ","bo":"bo-Tibt-CN","boj":"boj-Latn-ZZ","bom":"bom-Latn-ZZ","bon":"bon-Latn-ZZ","bpy":"bpy-Beng-IN","bqc":"bqc-Latn-ZZ","bqi":"bqi-Arab-IR","bqp":"bqp-Latn-ZZ","bqv":"bqv-Latn-CI","br":"br-Latn-FR","bra":"bra-Deva-IN","brh":"brh-Arab-PK","brx":"brx-Deva-IN","brz":"brz-Latn-ZZ","bs":"bs-Latn-BA","bsj":"bsj-Latn-ZZ","bsq":"bsq-Bass-LR","bss":"bss-Latn-CM","bst":"bst-Ethi-ZZ","bto":"bto-Latn-PH","btt":"btt-Latn-ZZ","btv":"btv-Deva-PK","bua":"bua-Cyrl-RU","buc":"buc-Latn-YT","bud":"bud-Latn-ZZ","bug":"bug-Latn-ID","buk":"buk-Latn-ZZ","bum":"bum-Latn-CM","buo":"buo-Latn-ZZ","bus":"bus-Latn-ZZ","buu":"buu-Latn-ZZ","bvb":"bvb-Latn-GQ","bwd":"bwd-Latn-ZZ","bwr":"bwr-Latn-ZZ","bxh":"bxh-Latn-ZZ","bye":"bye-Latn-ZZ","byn":"byn-Ethi-ER","byr":"byr-Latn-ZZ","bys":"bys-Latn-ZZ","byv":"byv-Latn-CM","byx":"byx-Latn-ZZ","bza":"bza-Latn-ZZ","bze":"bze-Latn-ML","bzf":"bzf-Latn-ZZ","bzh":"bzh-Latn-ZZ","bzw":"bzw-Latn-ZZ","ca":"ca-Latn-ES","can":"can-Latn-ZZ","cbj":"cbj-Latn-ZZ","cch":"cch-Latn-NG","ccp":"ccp-Cakm-BD","ce":"ce-Cyrl-RU","ceb":"ceb-Latn-PH","cfa":"cfa-Latn-ZZ","cgg":"cgg-Latn-UG","ch":"ch-Latn-GU","chk":"chk-Latn-FM","chm":"chm-Cyrl-RU","cho":"cho-Latn-US","chp":"chp-Latn-CA","chr":"chr-Cher-US","cja":"cja-Arab-KH","cjm":"cjm-Cham-VN","cjv":"cjv-Latn-ZZ","ckb":"ckb-Arab-IQ","ckl":"ckl-Latn-ZZ","cko":"cko-Latn-ZZ","cky":"cky-Latn-ZZ","cla":"cla-Latn-ZZ","cme":"cme-Latn-ZZ","cmg":"cmg-Soyo-MN","co":"co-Latn-FR","cop":"cop-Copt-EG","cps":"cps-Latn-PH","cr":"cr-Cans-CA","crh":"crh-Cyrl-UA","crj":"crj-Cans-CA","crk":"crk-Cans-CA","crl":"crl-Cans-CA","crm":"crm-Cans-CA","crs":"crs-Latn-SC","cs":"cs-Latn-CZ","csb":"csb-Latn-PL","csw":"csw-Cans-CA","ctd":"ctd-Pauc-MM","cu":"cu-Cyrl-RU","cu-Glag":"cu-Glag-BG","cv":"cv-Cyrl-RU","cy":"cy-Latn-GB","da":"da-Latn-DK","dad":"dad-Latn-ZZ","daf":"daf-Latn-ZZ","dag":"dag-Latn-ZZ","dah":"dah-Latn-ZZ","dak":"dak-Latn-US","dar":"dar-Cyrl-RU","dav":"dav-Latn-KE","dbd":"dbd-Latn-ZZ","dbq":"dbq-Latn-ZZ","dcc":"dcc-Arab-IN","ddn":"ddn-Latn-ZZ","de":"de-Latn-DE","ded":"ded-Latn-ZZ","den":"den-Latn-CA","dga":"dga-Latn-ZZ","dgh":"dgh-Latn-ZZ","dgi":"dgi-Latn-ZZ","dgl":"dgl-Arab-ZZ","dgr":"dgr-Latn-CA","dgz":"dgz-Latn-ZZ","dia":"dia-Latn-ZZ","dje":"dje-Latn-NE","dnj":"dnj-Latn-CI","dob":"dob-Latn-ZZ","doi":"doi-Arab-IN","dop":"dop-Latn-ZZ","dow":"dow-Latn-ZZ","dri":"dri-Latn-ZZ","drs":"drs-Ethi-ZZ","dsb":"dsb-Latn-DE","dtm":"dtm-Latn-ML","dtp":"dtp-Latn-MY","dts":"dts-Latn-ZZ","dty":"dty-Deva-NP","dua":"dua-Latn-CM","duc":"duc-Latn-ZZ","dud":"dud-Latn-ZZ","dug":"dug-Latn-ZZ","dv":"dv-Thaa-MV","dva":"dva-Latn-ZZ","dww":"dww-Latn-ZZ","dyo":"dyo-Latn-SN","dyu":"dyu-Latn-BF","dz":"dz-Tibt-BT","dzg":"dzg-Latn-ZZ","ebu":"ebu-Latn-KE","ee":"ee-Latn-GH","efi":"efi-Latn-NG","egl":"egl-Latn-IT","egy":"egy-Egyp-EG","eka":"eka-Latn-ZZ","eky":"eky-Kali-MM","el":"el-Grek-GR","ema":"ema-Latn-ZZ","emi":"emi-Latn-ZZ","en":"en-Latn-US","en-Shaw":"en-Shaw-GB","enn":"enn-Latn-ZZ","enq":"enq-Latn-ZZ","eo":"eo-Latn-001","eri":"eri-Latn-ZZ","es":"es-Latn-ES","esu":"esu-Latn-US","et":"et-Latn-EE","etr":"etr-Latn-ZZ","ett":"ett-Ital-IT","etu":"etu-Latn-ZZ","etx":"etx-Latn-ZZ","eu":"eu-Latn-ES","ewo":"ewo-Latn-CM","ext":"ext-Latn-ES","fa":"fa-Arab-IR","faa":"faa-Latn-ZZ","fab":"fab-Latn-ZZ","fag":"fag-Latn-ZZ","fai":"fai-Latn-ZZ","fan":"fan-Latn-GQ","ff":"ff-Latn-SN","ff-Adlm":"ff-Adlm-GN","ffi":"ffi-Latn-ZZ","ffm":"ffm-Latn-ML","fi":"fi-Latn-FI","fia":"fia-Arab-SD","fil":"fil-Latn-PH","fit":"fit-Latn-SE","fj":"fj-Latn-FJ","flr":"flr-Latn-ZZ","fmp":"fmp-Latn-ZZ","fo":"fo-Latn-FO","fod":"fod-Latn-ZZ","fon":"fon-Latn-BJ","for":"for-Latn-ZZ","fpe":"fpe-Latn-ZZ","fqs":"fqs-Latn-ZZ","fr":"fr-Latn-FR","frc":"frc-Latn-US","frp":"frp-Latn-FR","frr":"frr-Latn-DE","frs":"frs-Latn-DE","fub":"fub-Arab-CM","fud":"fud-Latn-WF","fue":"fue-Latn-ZZ","fuf":"fuf-Latn-GN","fuh":"fuh-Latn-ZZ","fuq":"fuq-Latn-NE","fur":"fur-Latn-IT","fuv":"fuv-Latn-NG","fuy":"fuy-Latn-ZZ","fvr":"fvr-Latn-SD","fy":"fy-Latn-NL","ga":"ga-Latn-IE","gaa":"gaa-Latn-GH","gaf":"gaf-Latn-ZZ","gag":"gag-Latn-MD","gah":"gah-Latn-ZZ","gaj":"gaj-Latn-ZZ","gam":"gam-Latn-ZZ","gan":"gan-Hans-CN","gaw":"gaw-Latn-ZZ","gay":"gay-Latn-ID","gba":"gba-Latn-ZZ","gbf":"gbf-Latn-ZZ","gbm":"gbm-Deva-IN","gby":"gby-Latn-ZZ","gbz":"gbz-Arab-IR","gcr":"gcr-Latn-GF","gd":"gd-Latn-GB","gde":"gde-Latn-ZZ","gdn":"gdn-Latn-ZZ","gdr":"gdr-Latn-ZZ","geb":"geb-Latn-ZZ","gej":"gej-Latn-ZZ","gel":"gel-Latn-ZZ","gez":"gez-Ethi-ET","gfk":"gfk-Latn-ZZ","ggn":"ggn-Deva-NP","ghs":"ghs-Latn-ZZ","gil":"gil-Latn-KI","gim":"gim-Latn-ZZ","gjk":"gjk-Arab-PK","gjn":"gjn-Latn-ZZ","gju":"gju-Arab-PK","gkn":"gkn-Latn-ZZ","gkp":"gkp-Latn-ZZ","gl":"gl-Latn-ES","glk":"glk-Arab-IR","gmm":"gmm-Latn-ZZ","gmv":"gmv-Ethi-ZZ","gn":"gn-Latn-PY","gnd":"gnd-Latn-ZZ","gng":"gng-Latn-ZZ","god":"god-Latn-ZZ","gof":"gof-Ethi-ZZ","goi":"goi-Latn-ZZ","gom":"gom-Deva-IN","gon":"gon-Telu-IN","gor":"gor-Latn-ID","gos":"gos-Latn-NL","got":"got-Goth-UA","grb":"grb-Latn-ZZ","grc":"grc-Cprt-CY","grc-Linb":"grc-Linb-GR","grt":"grt-Beng-IN","grw":"grw-Latn-ZZ","gsw":"gsw-Latn-CH","gu":"gu-Gujr-IN","gub":"gub-Latn-BR","guc":"guc-Latn-CO","gud":"gud-Latn-ZZ","gur":"gur-Latn-GH","guw":"guw-Latn-ZZ","gux":"gux-Latn-ZZ","guz":"guz-Latn-KE","gv":"gv-Latn-IM","gvf":"gvf-Latn-ZZ","gvr":"gvr-Deva-NP","gvs":"gvs-Latn-ZZ","gwc":"gwc-Arab-ZZ","gwi":"gwi-Latn-CA","gwt":"gwt-Arab-ZZ","gyi":"gyi-Latn-ZZ","ha":"ha-Latn-NG","ha-CM":"ha-Arab-CM","ha-SD":"ha-Arab-SD","hag":"hag-Latn-ZZ","hak":"hak-Hans-CN","ham":"ham-Latn-ZZ","haw":"haw-Latn-US","haz":"haz-Arab-AF","hbb":"hbb-Latn-ZZ","hdy":"hdy-Ethi-ZZ","he":"he-Hebr-IL","hhy":"hhy-Latn-ZZ","hi":"hi-Deva-IN","hia":"hia-Latn-ZZ","hif":"hif-Latn-FJ","hig":"hig-Latn-ZZ","hih":"hih-Latn-ZZ","hil":"hil-Latn-PH","hla":"hla-Latn-ZZ","hlu":"hlu-Hluw-TR","hmd":"hmd-Plrd-CN","hmt":"hmt-Latn-ZZ","hnd":"hnd-Arab-PK","hne":"hne-Deva-IN","hnj":"hnj-Hmng-LA","hnn":"hnn-Latn-PH","hno":"hno-Arab-PK","ho":"ho-Latn-PG","hoc":"hoc-Deva-IN","hoj":"hoj-Deva-IN","hot":"hot-Latn-ZZ","hr":"hr-Latn-HR","hsb":"hsb-Latn-DE","hsn":"hsn-Hans-CN","ht":"ht-Latn-HT","hu":"hu-Latn-HU","hui":"hui-Latn-ZZ","hy":"hy-Armn-AM","hz":"hz-Latn-NA","ia":"ia-Latn-FR","ian":"ian-Latn-ZZ","iar":"iar-Latn-ZZ","iba":"iba-Latn-MY","ibb":"ibb-Latn-NG","iby":"iby-Latn-ZZ","ica":"ica-Latn-ZZ","ich":"ich-Latn-ZZ","id":"id-Latn-ID","idd":"idd-Latn-ZZ","idi":"idi-Latn-ZZ","idu":"idu-Latn-ZZ","ife":"ife-Latn-TG","ig":"ig-Latn-NG","igb":"igb-Latn-ZZ","ige":"ige-Latn-ZZ","ii":"ii-Yiii-CN","ijj":"ijj-Latn-ZZ","ik":"ik-Latn-US","ikk":"ikk-Latn-ZZ","ikt":"ikt-Latn-CA","ikw":"ikw-Latn-ZZ","ikx":"ikx-Latn-ZZ","ilo":"ilo-Latn-PH","imo":"imo-Latn-ZZ","in":"in-Latn-ID","inh":"inh-Cyrl-RU","io":"io-Latn-001","iou":"iou-Latn-ZZ","iri":"iri-Latn-ZZ","is":"is-Latn-IS","it":"it-Latn-IT","iu":"iu-Cans-CA","iw":"iw-Hebr-IL","iwm":"iwm-Latn-ZZ","iws":"iws-Latn-ZZ","izh":"izh-Latn-RU","izi":"izi-Latn-ZZ","ja":"ja-Jpan-JP","jab":"jab-Latn-ZZ","jam":"jam-Latn-JM","jbo":"jbo-Latn-001","jbu":"jbu-Latn-ZZ","jen":"jen-Latn-ZZ","jgk":"jgk-Latn-ZZ","jgo":"jgo-Latn-CM","ji":"ji-Hebr-UA","jib":"jib-Latn-ZZ","jmc":"jmc-Latn-TZ","jml":"jml-Deva-NP","jra":"jra-Latn-ZZ","jut":"jut-Latn-DK","jv":"jv-Latn-ID","jw":"jw-Latn-ID","ka":"ka-Geor-GE","kaa":"kaa-Cyrl-UZ","kab":"kab-Latn-DZ","kac":"kac-Latn-MM","kad":"kad-Latn-ZZ","kai":"kai-Latn-ZZ","kaj":"kaj-Latn-NG","kam":"kam-Latn-KE","kao":"kao-Latn-ML","kbd":"kbd-Cyrl-RU","kbm":"kbm-Latn-ZZ","kbp":"kbp-Latn-ZZ","kbq":"kbq-Latn-ZZ","kbx":"kbx-Latn-ZZ","kby":"kby-Arab-NE","kcg":"kcg-Latn-NG","kck":"kck-Latn-ZW","kcl":"kcl-Latn-ZZ","kct":"kct-Latn-ZZ","kde":"kde-Latn-TZ","kdh":"kdh-Arab-TG","kdl":"kdl-Latn-ZZ","kdt":"kdt-Thai-TH","kea":"kea-Latn-CV","ken":"ken-Latn-CM","kez":"kez-Latn-ZZ","kfo":"kfo-Latn-CI","kfr":"kfr-Deva-IN","kfy":"kfy-Deva-IN","kg":"kg-Latn-CD","kge":"kge-Latn-ID","kgf":"kgf-Latn-ZZ","kgp":"kgp-Latn-BR","kha":"kha-Latn-IN","khb":"khb-Talu-CN","khn":"khn-Deva-IN","khq":"khq-Latn-ML","khs":"khs-Latn-ZZ","kht":"kht-Mymr-IN","khw":"khw-Arab-PK","khz":"khz-Latn-ZZ","ki":"ki-Latn-KE","kij":"kij-Latn-ZZ","kiu":"kiu-Latn-TR","kiw":"kiw-Latn-ZZ","kj":"kj-Latn-NA","kjd":"kjd-Latn-ZZ","kjg":"kjg-Laoo-LA","kjs":"kjs-Latn-ZZ","kjy":"kjy-Latn-ZZ","kk":"kk-Cyrl-KZ","kk-AF":"kk-Arab-AF","kk-Arab":"kk-Arab-CN","kk-CN":"kk-Arab-CN","kk-IR":"kk-Arab-IR","kk-MN":"kk-Arab-MN","kkc":"kkc-Latn-ZZ","kkj":"kkj-Latn-CM","kl":"kl-Latn-GL","kln":"kln-Latn-KE","klq":"klq-Latn-ZZ","klt":"klt-Latn-ZZ","klx":"klx-Latn-ZZ","km":"km-Khmr-KH","kmb":"kmb-Latn-AO","kmh":"kmh-Latn-ZZ","kmo":"kmo-Latn-ZZ","kms":"kms-Latn-ZZ","kmu":"kmu-Latn-ZZ","kmw":"kmw-Latn-ZZ","kn":"kn-Knda-IN","knf":"knf-Latn-GW","knp":"knp-Latn-ZZ","ko":"ko-Kore-KR","koi":"koi-Cyrl-RU","kok":"kok-Deva-IN","kol":"kol-Latn-ZZ","kos":"kos-Latn-FM","koz":"koz-Latn-ZZ","kpe":"kpe-Latn-LR","kpf":"kpf-Latn-ZZ","kpo":"kpo-Latn-ZZ","kpr":"kpr-Latn-ZZ","kpx":"kpx-Latn-ZZ","kqb":"kqb-Latn-ZZ","kqf":"kqf-Latn-ZZ","kqs":"kqs-Latn-ZZ","kqy":"kqy-Ethi-ZZ","kr":"kr-Latn-ZZ","krc":"krc-Cyrl-RU","kri":"kri-Latn-SL","krj":"krj-Latn-PH","krl":"krl-Latn-RU","krs":"krs-Latn-ZZ","kru":"kru-Deva-IN","ks":"ks-Arab-IN","ksb":"ksb-Latn-TZ","ksd":"ksd-Latn-ZZ","ksf":"ksf-Latn-CM","ksh":"ksh-Latn-DE","ksj":"ksj-Latn-ZZ","ksr":"ksr-Latn-ZZ","ktb":"ktb-Ethi-ZZ","ktm":"ktm-Latn-ZZ","kto":"kto-Latn-ZZ","ku":"ku-Latn-TR","ku-Arab":"ku-Arab-IQ","ku-LB":"ku-Arab-LB","kub":"kub-Latn-ZZ","kud":"kud-Latn-ZZ","kue":"kue-Latn-ZZ","kuj":"kuj-Latn-ZZ","kum":"kum-Cyrl-RU","kun":"kun-Latn-ZZ","kup":"kup-Latn-ZZ","kus":"kus-Latn-ZZ","kv":"kv-Cyrl-RU","kvg":"kvg-Latn-ZZ","kvr":"kvr-Latn-ID","kvx":"kvx-Arab-PK","kw":"kw-Latn-GB","kwj":"kwj-Latn-ZZ","kwo":"kwo-Latn-ZZ","kxa":"kxa-Latn-ZZ","kxc":"kxc-Ethi-ZZ","kxm":"kxm-Thai-TH","kxp":"kxp-Arab-PK","kxw":"kxw-Latn-ZZ","kxz":"kxz-Latn-ZZ","ky":"ky-Cyrl-KG","ky-Arab":"ky-Arab-CN","ky-CN":"ky-Arab-CN","ky-Latn":"ky-Latn-TR","ky-TR":"ky-Latn-TR","kye":"kye-Latn-ZZ","kyx":"kyx-Latn-ZZ","kzr":"kzr-Latn-ZZ","la":"la-Latn-VA","lab":"lab-Lina-GR","lad":"lad-Hebr-IL","lag":"lag-Latn-TZ","lah":"lah-Arab-PK","laj":"laj-Latn-UG","las":"las-Latn-ZZ","lb":"lb-Latn-LU","lbe":"lbe-Cyrl-RU","lbu":"lbu-Latn-ZZ","lbw":"lbw-Latn-ID","lcm":"lcm-Latn-ZZ","lcp":"lcp-Thai-CN","ldb":"ldb-Latn-ZZ","led":"led-Latn-ZZ","lee":"lee-Latn-ZZ","lem":"lem-Latn-ZZ","lep":"lep-Lepc-IN","leq":"leq-Latn-ZZ","leu":"leu-Latn-ZZ","lez":"lez-Cyrl-RU","lg":"lg-Latn-UG","lgg":"lgg-Latn-ZZ","li":"li-Latn-NL","lia":"lia-Latn-ZZ","lid":"lid-Latn-ZZ","lif":"lif-Deva-NP","lif-Limb":"lif-Limb-IN","lig":"lig-Latn-ZZ","lih":"lih-Latn-ZZ","lij":"lij-Latn-IT","lis":"lis-Lisu-CN","ljp":"ljp-Latn-ID","lki":"lki-Arab-IR","lkt":"lkt-Latn-US","lle":"lle-Latn-ZZ","lln":"lln-Latn-ZZ","lmn":"lmn-Telu-IN","lmo":"lmo-Latn-IT","lmp":"lmp-Latn-ZZ","ln":"ln-Latn-CD","lns":"lns-Latn-ZZ","lnu":"lnu-Latn-ZZ","lo":"lo-Laoo-LA","loj":"loj-Latn-ZZ","lok":"lok-Latn-ZZ","lol":"lol-Latn-CD","lor":"lor-Latn-ZZ","los":"los-Latn-ZZ","loz":"loz-Latn-ZM","lrc":"lrc-Arab-IR","lt":"lt-Latn-LT","ltg":"ltg-Latn-LV","lu":"lu-Latn-CD","lua":"lua-Latn-CD","luo":"luo-Latn-KE","luy":"luy-Latn-KE","luz":"luz-Arab-IR","lv":"lv-Latn-LV","lwl":"lwl-Thai-TH","lzh":"lzh-Hans-CN","lzz":"lzz-Latn-TR","mad":"mad-Latn-ID","maf":"maf-Latn-CM","mag":"mag-Deva-IN","mai":"mai-Deva-IN","mak":"mak-Latn-ID","man":"man-Latn-GM","man-GN":"man-Nkoo-GN","man-Nkoo":"man-Nkoo-GN","mas":"mas-Latn-KE","maw":"maw-Latn-ZZ","maz":"maz-Latn-MX","mbh":"mbh-Latn-ZZ","mbo":"mbo-Latn-ZZ","mbq":"mbq-Latn-ZZ","mbu":"mbu-Latn-ZZ","mbw":"mbw-Latn-ZZ","mci":"mci-Latn-ZZ","mcp":"mcp-Latn-ZZ","mcq":"mcq-Latn-ZZ","mcr":"mcr-Latn-ZZ","mcu":"mcu-Latn-ZZ","mda":"mda-Latn-ZZ","mde":"mde-Arab-ZZ","mdf":"mdf-Cyrl-RU","mdh":"mdh-Latn-PH","mdj":"mdj-Latn-ZZ","mdr":"mdr-Latn-ID","mdx":"mdx-Ethi-ZZ","med":"med-Latn-ZZ","mee":"mee-Latn-ZZ","mek":"mek-Latn-ZZ","men":"men-Latn-SL","mer":"mer-Latn-KE","met":"met-Latn-ZZ","meu":"meu-Latn-ZZ","mfa":"mfa-Arab-TH","mfe":"mfe-Latn-MU","mfn":"mfn-Latn-ZZ","mfo":"mfo-Latn-ZZ","mfq":"mfq-Latn-ZZ","mg":"mg-Latn-MG","mgh":"mgh-Latn-MZ","mgl":"mgl-Latn-ZZ","mgo":"mgo-Latn-CM","mgp":"mgp-Deva-NP","mgy":"mgy-Latn-TZ","mh":"mh-Latn-MH","mhi":"mhi-Latn-ZZ","mhl":"mhl-Latn-ZZ","mi":"mi-Latn-NZ","mif":"mif-Latn-ZZ","min":"min-Latn-ID","mis":"mis-Hatr-IQ","miw":"miw-Latn-ZZ","mk":"mk-Cyrl-MK","mki":"mki-Arab-ZZ","mkl":"mkl-Latn-ZZ","mkp":"mkp-Latn-ZZ","mkw":"mkw-Latn-ZZ","ml":"ml-Mlym-IN","mle":"mle-Latn-ZZ","mlp":"mlp-Latn-ZZ","mls":"mls-Latn-SD","mmo":"mmo-Latn-ZZ","mmu":"mmu-Latn-ZZ","mmx":"mmx-Latn-ZZ","mn":"mn-Cyrl-MN","mn-CN":"mn-Mong-CN","mn-Mong":"mn-Mong-CN","mna":"mna-Latn-ZZ","mnf":"mnf-Latn-ZZ","mni":"mni-Beng-IN","mnw":"mnw-Mymr-MM","moa":"moa-Latn-ZZ","moe":"moe-Latn-CA","moh":"moh-Latn-CA","mos":"mos-Latn-BF","mox":"mox-Latn-ZZ","mpp":"mpp-Latn-ZZ","mps":"mps-Latn-ZZ","mpt":"mpt-Latn-ZZ","mpx":"mpx-Latn-ZZ","mql":"mql-Latn-ZZ","mr":"mr-Deva-IN","mrd":"mrd-Deva-NP","mrj":"mrj-Cyrl-RU","mro":"mro-Mroo-BD","ms":"ms-Latn-MY","ms-CC":"ms-Arab-CC","ms-ID":"ms-Arab-ID","mt":"mt-Latn-MT","mtc":"mtc-Latn-ZZ","mtf":"mtf-Latn-ZZ","mti":"mti-Latn-ZZ","mtr":"mtr-Deva-IN","mua":"mua-Latn-CM","mur":"mur-Latn-ZZ","mus":"mus-Latn-US","mva":"mva-Latn-ZZ","mvn":"mvn-Latn-ZZ","mvy":"mvy-Arab-PK","mwk":"mwk-Latn-ML","mwr":"mwr-Deva-IN","mwv":"mwv-Latn-ID","mxc":"mxc-Latn-ZW","mxm":"mxm-Latn-ZZ","my":"my-Mymr-MM","myk":"myk-Latn-ZZ","mym":"mym-Ethi-ZZ","myv":"myv-Cyrl-RU","myw":"myw-Latn-ZZ","myx":"myx-Latn-UG","myz":"myz-Mand-IR","mzk":"mzk-Latn-ZZ","mzm":"mzm-Latn-ZZ","mzn":"mzn-Arab-IR","mzp":"mzp-Latn-ZZ","mzw":"mzw-Latn-ZZ","mzz":"mzz-Latn-ZZ","na":"na-Latn-NR","nac":"nac-Latn-ZZ","naf":"naf-Latn-ZZ","nak":"nak-Latn-ZZ","nan":"nan-Hans-CN","nap":"nap-Latn-IT","naq":"naq-Latn-NA","nas":"nas-Latn-ZZ","nb":"nb-Latn-NO","nca":"nca-Latn-ZZ","nce":"nce-Latn-ZZ","ncf":"ncf-Latn-ZZ","nch":"nch-Latn-MX","nco":"nco-Latn-ZZ","ncu":"ncu-Latn-ZZ","nd":"nd-Latn-ZW","ndc":"ndc-Latn-MZ","nds":"nds-Latn-DE","ne":"ne-Deva-NP","neb":"neb-Latn-ZZ","new":"new-Deva-NP","nex":"nex-Latn-ZZ","nfr":"nfr-Latn-ZZ","ng":"ng-Latn-NA","nga":"nga-Latn-ZZ","ngb":"ngb-Latn-ZZ","ngl":"ngl-Latn-MZ","nhb":"nhb-Latn-ZZ","nhe":"nhe-Latn-MX","nhw":"nhw-Latn-MX","nif":"nif-Latn-ZZ","nii":"nii-Latn-ZZ","nij":"nij-Latn-ID","nin":"nin-Latn-ZZ","niu":"niu-Latn-NU","niy":"niy-Latn-ZZ","niz":"niz-Latn-ZZ","njo":"njo-Latn-IN","nkg":"nkg-Latn-ZZ","nko":"nko-Latn-ZZ","nl":"nl-Latn-NL","nmg":"nmg-Latn-CM","nmz":"nmz-Latn-ZZ","nn":"nn-Latn-NO","nnf":"nnf-Latn-ZZ","nnh":"nnh-Latn-CM","nnk":"nnk-Latn-ZZ","nnm":"nnm-Latn-ZZ","no":"no-Latn-NO","nod":"nod-Lana-TH","noe":"noe-Deva-IN","non":"non-Runr-SE","nop":"nop-Latn-ZZ","nou":"nou-Latn-ZZ","nqo":"nqo-Nkoo-GN","nr":"nr-Latn-ZA","nrb":"nrb-Latn-ZZ","nsk":"nsk-Cans-CA","nsn":"nsn-Latn-ZZ","nso":"nso-Latn-ZA","nss":"nss-Latn-ZZ","ntm":"ntm-Latn-ZZ","ntr":"ntr-Latn-ZZ","nui":"nui-Latn-ZZ","nup":"nup-Latn-ZZ","nus":"nus-Latn-SS","nuv":"nuv-Latn-ZZ","nux":"nux-Latn-ZZ","nv":"nv-Latn-US","nwb":"nwb-Latn-ZZ","nxq":"nxq-Latn-CN","nxr":"nxr-Latn-ZZ","ny":"ny-Latn-MW","nym":"nym-Latn-TZ","nyn":"nyn-Latn-UG","nzi":"nzi-Latn-GH","oc":"oc-Latn-FR","ogc":"ogc-Latn-ZZ","okr":"okr-Latn-ZZ","okv":"okv-Latn-ZZ","om":"om-Latn-ET","ong":"ong-Latn-ZZ","onn":"onn-Latn-ZZ","ons":"ons-Latn-ZZ","opm":"opm-Latn-ZZ","or":"or-Orya-IN","oro":"oro-Latn-ZZ","oru":"oru-Arab-ZZ","os":"os-Cyrl-GE","osa":"osa-Osge-US","ota":"ota-Arab-ZZ","otk":"otk-Orkh-MN","ozm":"ozm-Latn-ZZ","pa":"pa-Guru-IN","pa-Arab":"pa-Arab-PK","pa-PK":"pa-Arab-PK","pag":"pag-Latn-PH","pal":"pal-Phli-IR","pal-Phlp":"pal-Phlp-CN","pam":"pam-Latn-PH","pap":"pap-Latn-AW","pau":"pau-Latn-PW","pbi":"pbi-Latn-ZZ","pcd":"pcd-Latn-FR","pcm":"pcm-Latn-NG","pdc":"pdc-Latn-US","pdt":"pdt-Latn-CA","ped":"ped-Latn-ZZ","peo":"peo-Xpeo-IR","pex":"pex-Latn-ZZ","pfl":"pfl-Latn-DE","phl":"phl-Arab-ZZ","phn":"phn-Phnx-LB","pil":"pil-Latn-ZZ","pip":"pip-Latn-ZZ","pka":"pka-Brah-IN","pko":"pko-Latn-KE","pl":"pl-Latn-PL","pla":"pla-Latn-ZZ","pms":"pms-Latn-IT","png":"png-Latn-ZZ","pnn":"pnn-Latn-ZZ","pnt":"pnt-Grek-GR","pon":"pon-Latn-FM","ppo":"ppo-Latn-ZZ","pra":"pra-Khar-PK","prd":"prd-Arab-IR","prg":"prg-Latn-001","ps":"ps-Arab-AF","pss":"pss-Latn-ZZ","pt":"pt-Latn-BR","ptp":"ptp-Latn-ZZ","puu":"puu-Latn-GA","pwa":"pwa-Latn-ZZ","qu":"qu-Latn-PE","quc":"quc-Latn-GT","qug":"qug-Latn-EC","rai":"rai-Latn-ZZ","raj":"raj-Deva-IN","rao":"rao-Latn-ZZ","rcf":"rcf-Latn-RE","rej":"rej-Latn-ID","rel":"rel-Latn-ZZ","res":"res-Latn-ZZ","rgn":"rgn-Latn-IT","rhg":"rhg-Arab-ZZ","ria":"ria-Latn-IN","rif":"rif-Tfng-MA","rif-NL":"rif-Latn-NL","rjs":"rjs-Deva-NP","rkt":"rkt-Beng-BD","rm":"rm-Latn-CH","rmf":"rmf-Latn-FI","rmo":"rmo-Latn-CH","rmt":"rmt-Arab-IR","rmu":"rmu-Latn-SE","rn":"rn-Latn-BI","rna":"rna-Latn-ZZ","rng":"rng-Latn-MZ","ro":"ro-Latn-RO","rob":"rob-Latn-ID","rof":"rof-Latn-TZ","roo":"roo-Latn-ZZ","rro":"rro-Latn-ZZ","rtm":"rtm-Latn-FJ","ru":"ru-Cyrl-RU","rue":"rue-Cyrl-UA","rug":"rug-Latn-SB","rw":"rw-Latn-RW","rwk":"rwk-Latn-TZ","rwo":"rwo-Latn-ZZ","ryu":"ryu-Kana-JP","sa":"sa-Deva-IN","saf":"saf-Latn-GH","sah":"sah-Cyrl-RU","saq":"saq-Latn-KE","sas":"sas-Latn-ID","sat":"sat-Latn-IN","sav":"sav-Latn-SN","saz":"saz-Saur-IN","sba":"sba-Latn-ZZ","sbe":"sbe-Latn-ZZ","sbp":"sbp-Latn-TZ","sc":"sc-Latn-IT","sck":"sck-Deva-IN","scl":"scl-Arab-ZZ","scn":"scn-Latn-IT","sco":"sco-Latn-GB","scs":"scs-Latn-CA","sd":"sd-Arab-PK","sd-Deva":"sd-Deva-IN","sd-Khoj":"sd-Khoj-IN","sd-Sind":"sd-Sind-IN","sdc":"sdc-Latn-IT","sdh":"sdh-Arab-IR","se":"se-Latn-NO","sef":"sef-Latn-CI","seh":"seh-Latn-MZ","sei":"sei-Latn-MX","ses":"ses-Latn-ML","sg":"sg-Latn-CF","sga":"sga-Ogam-IE","sgs":"sgs-Latn-LT","sgw":"sgw-Ethi-ZZ","sgz":"sgz-Latn-ZZ","shi":"shi-Tfng-MA","shk":"shk-Latn-ZZ","shn":"shn-Mymr-MM","shu":"shu-Arab-ZZ","si":"si-Sinh-LK","sid":"sid-Latn-ET","sig":"sig-Latn-ZZ","sil":"sil-Latn-ZZ","sim":"sim-Latn-ZZ","sjr":"sjr-Latn-ZZ","sk":"sk-Latn-SK","skc":"skc-Latn-ZZ","skr":"skr-Arab-PK","sks":"sks-Latn-ZZ","sl":"sl-Latn-SI","sld":"sld-Latn-ZZ","sli":"sli-Latn-PL","sll":"sll-Latn-ZZ","sly":"sly-Latn-ID","sm":"sm-Latn-WS","sma":"sma-Latn-SE","smj":"smj-Latn-SE","smn":"smn-Latn-FI","smp":"smp-Samr-IL","smq":"smq-Latn-ZZ","sms":"sms-Latn-FI","sn":"sn-Latn-ZW","snc":"snc-Latn-ZZ","snk":"snk-Latn-ML","snp":"snp-Latn-ZZ","snx":"snx-Latn-ZZ","sny":"sny-Latn-ZZ","so":"so-Latn-SO","sok":"sok-Latn-ZZ","soq":"soq-Latn-ZZ","sou":"sou-Thai-TH","soy":"soy-Latn-ZZ","spd":"spd-Latn-ZZ","spl":"spl-Latn-ZZ","sps":"sps-Latn-ZZ","sq":"sq-Latn-AL","sr":"sr-Cyrl-RS","sr-ME":"sr-Latn-ME","sr-RO":"sr-Latn-RO","sr-RU":"sr-Latn-RU","sr-TR":"sr-Latn-TR","srb":"srb-Sora-IN","srn":"srn-Latn-SR","srr":"srr-Latn-SN","srx":"srx-Deva-IN","ss":"ss-Latn-ZA","ssd":"ssd-Latn-ZZ","ssg":"ssg-Latn-ZZ","ssy":"ssy-Latn-ER","st":"st-Latn-ZA","stk":"stk-Latn-ZZ","stq":"stq-Latn-DE","su":"su-Latn-ID","sua":"sua-Latn-ZZ","sue":"sue-Latn-ZZ","suk":"suk-Latn-TZ","sur":"sur-Latn-ZZ","sus":"sus-Latn-GN","sv":"sv-Latn-SE","sw":"sw-Latn-TZ","swb":"swb-Arab-YT","swc":"swc-Latn-CD","swg":"swg-Latn-DE","swp":"swp-Latn-ZZ","swv":"swv-Deva-IN","sxn":"sxn-Latn-ID","sxw":"sxw-Latn-ZZ","syl":"syl-Beng-BD","syr":"syr-Syrc-IQ","szl":"szl-Latn-PL","ta":"ta-Taml-IN","taj":"taj-Deva-NP","tal":"tal-Latn-ZZ","tan":"tan-Latn-ZZ","taq":"taq-Latn-ZZ","tbc":"tbc-Latn-ZZ","tbd":"tbd-Latn-ZZ","tbf":"tbf-Latn-ZZ","tbg":"tbg-Latn-ZZ","tbo":"tbo-Latn-ZZ","tbw":"tbw-Latn-PH","tbz":"tbz-Latn-ZZ","tci":"tci-Latn-ZZ","tcy":"tcy-Knda-IN","tdd":"tdd-Tale-CN","tdg":"tdg-Deva-NP","tdh":"tdh-Deva-NP","te":"te-Telu-IN","ted":"ted-Latn-ZZ","tem":"tem-Latn-SL","teo":"teo-Latn-UG","tet":"tet-Latn-TL","tfi":"tfi-Latn-ZZ","tg":"tg-Cyrl-TJ","tg-Arab":"tg-Arab-PK","tg-PK":"tg-Arab-PK","tgc":"tgc-Latn-ZZ","tgo":"tgo-Latn-ZZ","tgu":"tgu-Latn-ZZ","th":"th-Thai-TH","thl":"thl-Deva-NP","thq":"thq-Deva-NP","thr":"thr-Deva-NP","ti":"ti-Ethi-ET","tif":"tif-Latn-ZZ","tig":"tig-Ethi-ER","tik":"tik-Latn-ZZ","tim":"tim-Latn-ZZ","tio":"tio-Latn-ZZ","tiv":"tiv-Latn-NG","tk":"tk-Latn-TM","tkl":"tkl-Latn-TK","tkr":"tkr-Latn-AZ","tkt":"tkt-Deva-NP","tl":"tl-Latn-PH","tlf":"tlf-Latn-ZZ","tlx":"tlx-Latn-ZZ","tly":"tly-Latn-AZ","tmh":"tmh-Latn-NE","tmy":"tmy-Latn-ZZ","tn":"tn-Latn-ZA","tnh":"tnh-Latn-ZZ","to":"to-Latn-TO","tof":"tof-Latn-ZZ","tog":"tog-Latn-MW","toq":"toq-Latn-ZZ","tpi":"tpi-Latn-PG","tpm":"tpm-Latn-ZZ","tpz":"tpz-Latn-ZZ","tqo":"tqo-Latn-ZZ","tr":"tr-Latn-TR","tru":"tru-Latn-TR","trv":"trv-Latn-TW","trw":"trw-Arab-ZZ","ts":"ts-Latn-ZA","tsd":"tsd-Grek-GR","tsf":"tsf-Deva-NP","tsg":"tsg-Latn-PH","tsj":"tsj-Tibt-BT","tsw":"tsw-Latn-ZZ","tt":"tt-Cyrl-RU","ttd":"ttd-Latn-ZZ","tte":"tte-Latn-ZZ","ttj":"ttj-Latn-UG","ttr":"ttr-Latn-ZZ","tts":"tts-Thai-TH","ttt":"ttt-Latn-AZ","tuh":"tuh-Latn-ZZ","tul":"tul-Latn-ZZ","tum":"tum-Latn-MW","tuq":"tuq-Latn-ZZ","tvd":"tvd-Latn-ZZ","tvl":"tvl-Latn-TV","tvu":"tvu-Latn-ZZ","twh":"twh-Latn-ZZ","twq":"twq-Latn-NE","txg":"txg-Tang-CN","ty":"ty-Latn-PF","tya":"tya-Latn-ZZ","tyv":"tyv-Cyrl-RU","tzm":"tzm-Latn-MA","ubu":"ubu-Latn-ZZ","udm":"udm-Cyrl-RU","ug":"ug-Arab-CN","ug-Cyrl":"ug-Cyrl-KZ","ug-KZ":"ug-Cyrl-KZ","ug-MN":"ug-Cyrl-MN","uga":"uga-Ugar-SY","uk":"uk-Cyrl-UA","uli":"uli-Latn-FM","umb":"umb-Latn-AO","und":"en-Latn-US","und-002":"en-Latn-NG","und-003":"en-Latn-US","und-005":"pt-Latn-BR","und-009":"en-Latn-AU","und-011":"en-Latn-NG","und-013":"es-Latn-MX","und-014":"sw-Latn-TZ","und-015":"ar-Arab-EG","und-017":"sw-Latn-CD","und-018":"en-Latn-ZA","und-019":"en-Latn-US","und-021":"en-Latn-US","und-029":"es-Latn-CU","und-030":"zh-Hans-CN","und-034":"hi-Deva-IN","und-035":"id-Latn-ID","und-039":"it-Latn-IT","und-053":"en-Latn-AU","und-054":"en-Latn-PG","und-057":"en-Latn-GU","und-061":"sm-Latn-WS","und-142":"zh-Hans-CN","und-143":"uz-Latn-UZ","und-145":"ar-Arab-SA","und-150":"ru-Cyrl-RU","und-151":"ru-Cyrl-RU","und-154":"en-Latn-GB","und-155":"de-Latn-DE","und-202":"en-Latn-NG","und-419":"es-Latn-419","und-AD":"ca-Latn-AD","und-Adlm":"ff-Adlm-GN","und-AE":"ar-Arab-AE","und-AF":"fa-Arab-AF","und-Aghb":"lez-Aghb-RU","und-Ahom":"aho-Ahom-IN","und-AL":"sq-Latn-AL","und-AM":"hy-Armn-AM","und-AO":"pt-Latn-AO","und-AQ":"und-Latn-AQ","und-AR":"es-Latn-AR","und-Arab":"ar-Arab-EG","und-Arab-CC":"ms-Arab-CC","und-Arab-CN":"ug-Arab-CN","und-Arab-GB":"ks-Arab-GB","und-Arab-ID":"ms-Arab-ID","und-Arab-IN":"ur-Arab-IN","und-Arab-KH":"cja-Arab-KH","und-Arab-MN":"kk-Arab-MN","und-Arab-MU":"ur-Arab-MU","und-Arab-NG":"ha-Arab-NG","und-Arab-PK":"ur-Arab-PK","und-Arab-TG":"apd-Arab-TG","und-Arab-TH":"mfa-Arab-TH","und-Arab-TJ":"fa-Arab-TJ","und-Arab-TR":"az-Arab-TR","und-Arab-YT":"swb-Arab-YT","und-Armi":"arc-Armi-IR","und-Armn":"hy-Armn-AM","und-AS":"sm-Latn-AS","und-AT":"de-Latn-AT","und-Avst":"ae-Avst-IR","und-AW":"nl-Latn-AW","und-AX":"sv-Latn-AX","und-AZ":"az-Latn-AZ","und-BA":"bs-Latn-BA","und-Bali":"ban-Bali-ID","und-Bamu":"bax-Bamu-CM","und-Bass":"bsq-Bass-LR","und-Batk":"bbc-Batk-ID","und-BD":"bn-Beng-BD","und-BE":"nl-Latn-BE","und-Beng":"bn-Beng-BD","und-BF":"fr-Latn-BF","und-BG":"bg-Cyrl-BG","und-BH":"ar-Arab-BH","und-Bhks":"sa-Bhks-IN","und-BI":"rn-Latn-BI","und-BJ":"fr-Latn-BJ","und-BL":"fr-Latn-BL","und-BN":"ms-Latn-BN","und-BO":"es-Latn-BO","und-Bopo":"zh-Bopo-TW","und-BQ":"pap-Latn-BQ","und-BR":"pt-Latn-BR","und-Brah":"pka-Brah-IN","und-Brai":"fr-Brai-FR","und-BT":"dz-Tibt-BT","und-Bugi":"bug-Bugi-ID","und-Buhd":"bku-Buhd-PH","und-BV":"und-Latn-BV","und-BY":"be-Cyrl-BY","und-Cakm":"ccp-Cakm-BD","und-Cans":"cr-Cans-CA","und-Cari":"xcr-Cari-TR","und-CD":"sw-Latn-CD","und-CF":"fr-Latn-CF","und-CG":"fr-Latn-CG","und-CH":"de-Latn-CH","und-Cham":"cjm-Cham-VN","und-Cher":"chr-Cher-US","und-CI":"fr-Latn-CI","und-CL":"es-Latn-CL","und-CM":"fr-Latn-CM","und-CN":"zh-Hans-CN","und-CO":"es-Latn-CO","und-Copt":"cop-Copt-EG","und-CP":"und-Latn-CP","und-Cprt":"grc-Cprt-CY","und-CR":"es-Latn-CR","und-CU":"es-Latn-CU","und-CV":"pt-Latn-CV","und-CW":"pap-Latn-CW","und-CY":"el-Grek-CY","und-Cyrl":"ru-Cyrl-RU","und-Cyrl-AL":"mk-Cyrl-AL","und-Cyrl-BA":"sr-Cyrl-BA","und-Cyrl-GE":"ab-Cyrl-GE","und-Cyrl-GR":"mk-Cyrl-GR","und-Cyrl-MD":"uk-Cyrl-MD","und-Cyrl-RO":"bg-Cyrl-RO","und-Cyrl-SK":"uk-Cyrl-SK","und-Cyrl-TR":"kbd-Cyrl-TR","und-Cyrl-XK":"sr-Cyrl-XK","und-CZ":"cs-Latn-CZ","und-DE":"de-Latn-DE","und-Deva":"hi-Deva-IN","und-Deva-BT":"ne-Deva-BT","und-Deva-FJ":"hif-Deva-FJ","und-Deva-MU":"bho-Deva-MU","und-Deva-PK":"btv-Deva-PK","und-DJ":"aa-Latn-DJ","und-DK":"da-Latn-DK","und-DO":"es-Latn-DO","und-Dupl":"fr-Dupl-FR","und-DZ":"ar-Arab-DZ","und-EA":"es-Latn-EA","und-EC":"es-Latn-EC","und-EE":"et-Latn-EE","und-EG":"ar-Arab-EG","und-Egyp":"egy-Egyp-EG","und-EH":"ar-Arab-EH","und-Elba":"sq-Elba-AL","und-ER":"ti-Ethi-ER","und-ES":"es-Latn-ES","und-ET":"am-Ethi-ET","und-Ethi":"am-Ethi-ET","und-EU":"en-Latn-GB","und-EZ":"de-Latn-EZ","und-FI":"fi-Latn-FI","und-FO":"fo-Latn-FO","und-FR":"fr-Latn-FR","und-GA":"fr-Latn-GA","und-GE":"ka-Geor-GE","und-Geor":"ka-Geor-GE","und-GF":"fr-Latn-GF","und-GH":"ak-Latn-GH","und-GL":"kl-Latn-GL","und-Glag":"cu-Glag-BG","und-GN":"fr-Latn-GN","und-Gonm":"gon-Gonm-IN","und-Goth":"got-Goth-UA","und-GP":"fr-Latn-GP","und-GQ":"es-Latn-GQ","und-GR":"el-Grek-GR","und-Gran":"sa-Gran-IN","und-Grek":"el-Grek-GR","und-Grek-TR":"bgx-Grek-TR","und-GS":"und-Latn-GS","und-GT":"es-Latn-GT","und-Gujr":"gu-Gujr-IN","und-Guru":"pa-Guru-IN","und-GW":"pt-Latn-GW","und-Hanb":"zh-Hanb-TW","und-Hang":"ko-Hang-KR","und-Hani":"zh-Hani-CN","und-Hano":"hnn-Hano-PH","und-Hans":"zh-Hans-CN","und-Hant":"zh-Hant-TW","und-Hatr":"mis-Hatr-IQ","und-Hebr":"he-Hebr-IL","und-Hebr-CA":"yi-Hebr-CA","und-Hebr-GB":"yi-Hebr-GB","und-Hebr-SE":"yi-Hebr-SE","und-Hebr-UA":"yi-Hebr-UA","und-Hebr-US":"yi-Hebr-US","und-Hira":"ja-Hira-JP","und-HK":"zh-Hant-HK","und-Hluw":"hlu-Hluw-TR","und-HM":"und-Latn-HM","und-Hmng":"hnj-Hmng-LA","und-HN":"es-Latn-HN","und-HR":"hr-Latn-HR","und-HT":"ht-Latn-HT","und-HU":"hu-Latn-HU","und-Hung":"hu-Hung-HU","und-IC":"es-Latn-IC","und-ID":"id-Latn-ID","und-IL":"he-Hebr-IL","und-IN":"hi-Deva-IN","und-IQ":"ar-Arab-IQ","und-IR":"fa-Arab-IR","und-IS":"is-Latn-IS","und-IT":"it-Latn-IT","und-Ital":"ett-Ital-IT","und-Jamo":"ko-Jamo-KR","und-Java":"jv-Java-ID","und-JO":"ar-Arab-JO","und-JP":"ja-Jpan-JP","und-Jpan":"ja-Jpan-JP","und-Kali":"eky-Kali-MM","und-Kana":"ja-Kana-JP","und-KE":"sw-Latn-KE","und-KG":"ky-Cyrl-KG","und-KH":"km-Khmr-KH","und-Khar":"pra-Khar-PK","und-Khmr":"km-Khmr-KH","und-Khoj":"sd-Khoj-IN","und-KM":"ar-Arab-KM","und-Knda":"kn-Knda-IN","und-Kore":"ko-Kore-KR","und-KP":"ko-Kore-KP","und-KR":"ko-Kore-KR","und-Kthi":"bho-Kthi-IN","und-KW":"ar-Arab-KW","und-KZ":"ru-Cyrl-KZ","und-LA":"lo-Laoo-LA","und-Lana":"nod-Lana-TH","und-Laoo":"lo-Laoo-LA","und-Latn-AF":"tk-Latn-AF","und-Latn-AM":"ku-Latn-AM","und-Latn-CN":"za-Latn-CN","und-Latn-CY":"tr-Latn-CY","und-Latn-DZ":"fr-Latn-DZ","und-Latn-ET":"en-Latn-ET","und-Latn-GE":"ku-Latn-GE","und-Latn-IR":"tk-Latn-IR","und-Latn-KM":"fr-Latn-KM","und-Latn-MA":"fr-Latn-MA","und-Latn-MK":"sq-Latn-MK","und-Latn-MM":"kac-Latn-MM","und-Latn-MO":"pt-Latn-MO","und-Latn-MR":"fr-Latn-MR","und-Latn-RU":"krl-Latn-RU","und-Latn-SY":"fr-Latn-SY","und-Latn-TN":"fr-Latn-TN","und-Latn-TW":"trv-Latn-TW","und-Latn-UA":"pl-Latn-UA","und-LB":"ar-Arab-LB","und-Lepc":"lep-Lepc-IN","und-LI":"de-Latn-LI","und-Limb":"lif-Limb-IN","und-Lina":"lab-Lina-GR","und-Linb":"grc-Linb-GR","und-Lisu":"lis-Lisu-CN","und-LK":"si-Sinh-LK","und-LS":"st-Latn-LS","und-LT":"lt-Latn-LT","und-LU":"fr-Latn-LU","und-LV":"lv-Latn-LV","und-LY":"ar-Arab-LY","und-Lyci":"xlc-Lyci-TR","und-Lydi":"xld-Lydi-TR","und-MA":"ar-Arab-MA","und-Mahj":"hi-Mahj-IN","und-Mand":"myz-Mand-IR","und-Mani":"xmn-Mani-CN","und-Marc":"bo-Marc-CN","und-MC":"fr-Latn-MC","und-MD":"ro-Latn-MD","und-ME":"sr-Latn-ME","und-Mend":"men-Mend-SL","und-Merc":"xmr-Merc-SD","und-Mero":"xmr-Mero-SD","und-MF":"fr-Latn-MF","und-MG":"mg-Latn-MG","und-MK":"mk-Cyrl-MK","und-ML":"bm-Latn-ML","und-Mlym":"ml-Mlym-IN","und-MM":"my-Mymr-MM","und-MN":"mn-Cyrl-MN","und-MO":"zh-Hant-MO","und-Modi":"mr-Modi-IN","und-Mong":"mn-Mong-CN","und-MQ":"fr-Latn-MQ","und-MR":"ar-Arab-MR","und-Mroo":"mro-Mroo-BD","und-MT":"mt-Latn-MT","und-Mtei":"mni-Mtei-IN","und-MU":"mfe-Latn-MU","und-Mult":"skr-Mult-PK","und-MV":"dv-Thaa-MV","und-MX":"es-Latn-MX","und-MY":"ms-Latn-MY","und-Mymr":"my-Mymr-MM","und-Mymr-IN":"kht-Mymr-IN","und-Mymr-TH":"mnw-Mymr-TH","und-MZ":"pt-Latn-MZ","und-NA":"af-Latn-NA","und-Narb":"xna-Narb-SA","und-Nbat":"arc-Nbat-JO","und-NC":"fr-Latn-NC","und-NE":"ha-Latn-NE","und-Newa":"new-Newa-NP","und-NI":"es-Latn-NI","und-Nkoo":"man-Nkoo-GN","und-NL":"nl-Latn-NL","und-NO":"nb-Latn-NO","und-NP":"ne-Deva-NP","und-Nshu":"zhx-Nshu-CN","und-Ogam":"sga-Ogam-IE","und-Olck":"sat-Olck-IN","und-OM":"ar-Arab-OM","und-Orkh":"otk-Orkh-MN","und-Orya":"or-Orya-IN","und-Osge":"osa-Osge-US","und-Osma":"so-Osma-SO","und-PA":"es-Latn-PA","und-Palm":"arc-Palm-SY","und-Pauc":"ctd-Pauc-MM","und-PE":"es-Latn-PE","und-Perm":"kv-Perm-RU","und-PF":"fr-Latn-PF","und-PG":"tpi-Latn-PG","und-PH":"fil-Latn-PH","und-Phag":"lzh-Phag-CN","und-Phli":"pal-Phli-IR","und-Phlp":"pal-Phlp-CN","und-Phnx":"phn-Phnx-LB","und-PK":"ur-Arab-PK","und-PL":"pl-Latn-PL","und-Plrd":"hmd-Plrd-CN","und-PM":"fr-Latn-PM","und-PR":"es-Latn-PR","und-Prti":"xpr-Prti-IR","und-PS":"ar-Arab-PS","und-PT":"pt-Latn-PT","und-PW":"pau-Latn-PW","und-PY":"gn-Latn-PY","und-QA":"ar-Arab-QA","und-QO":"en-Latn-IO","und-RE":"fr-Latn-RE","und-Rjng":"rej-Rjng-ID","und-RO":"ro-Latn-RO","und-RS":"sr-Cyrl-RS","und-RU":"ru-Cyrl-RU","und-Runr":"non-Runr-SE","und-RW":"rw-Latn-RW","und-SA":"ar-Arab-SA","und-Samr":"smp-Samr-IL","und-Sarb":"xsa-Sarb-YE","und-Saur":"saz-Saur-IN","und-SC":"fr-Latn-SC","und-SD":"ar-Arab-SD","und-SE":"sv-Latn-SE","und-Sgnw":"ase-Sgnw-US","und-Shaw":"en-Shaw-GB","und-Shrd":"sa-Shrd-IN","und-SI":"sl-Latn-SI","und-Sidd":"sa-Sidd-IN","und-Sind":"sd-Sind-IN","und-Sinh":"si-Sinh-LK","und-SJ":"nb-Latn-SJ","und-SK":"sk-Latn-SK","und-SM":"it-Latn-SM","und-SN":"fr-Latn-SN","und-SO":"so-Latn-SO","und-Sora":"srb-Sora-IN","und-Soyo":"cmg-Soyo-MN","und-SR":"nl-Latn-SR","und-ST":"pt-Latn-ST","und-Sund":"su-Sund-ID","und-SV":"es-Latn-SV","und-SY":"ar-Arab-SY","und-Sylo":"syl-Sylo-BD","und-Syrc":"syr-Syrc-IQ","und-Tagb":"tbw-Tagb-PH","und-Takr":"doi-Takr-IN","und-Tale":"tdd-Tale-CN","und-Talu":"khb-Talu-CN","und-Taml":"ta-Taml-IN","und-Tang":"txg-Tang-CN","und-Tavt":"blt-Tavt-VN","und-TD":"fr-Latn-TD","und-Telu":"te-Telu-IN","und-TF":"fr-Latn-TF","und-Tfng":"zgh-Tfng-MA","und-TG":"fr-Latn-TG","und-Tglg":"fil-Tglg-PH","und-TH":"th-Thai-TH","und-Thaa":"dv-Thaa-MV","und-Thai":"th-Thai-TH","und-Thai-CN":"lcp-Thai-CN","und-Thai-KH":"kdt-Thai-KH","und-Thai-LA":"kdt-Thai-LA","und-Tibt":"bo-Tibt-CN","und-Tirh":"mai-Tirh-IN","und-TJ":"tg-Cyrl-TJ","und-TK":"tkl-Latn-TK","und-TL":"pt-Latn-TL","und-TM":"tk-Latn-TM","und-TN":"ar-Arab-TN","und-TO":"to-Latn-TO","und-TR":"tr-Latn-TR","und-TV":"tvl-Latn-TV","und-TW":"zh-Hant-TW","und-TZ":"sw-Latn-TZ","und-UA":"uk-Cyrl-UA","und-UG":"sw-Latn-UG","und-Ugar":"uga-Ugar-SY","und-UY":"es-Latn-UY","und-UZ":"uz-Latn-UZ","und-VA":"it-Latn-VA","und-Vaii":"vai-Vaii-LR","und-VE":"es-Latn-VE","und-VN":"vi-Latn-VN","und-VU":"bi-Latn-VU","und-Wara":"hoc-Wara-IN","und-WF":"fr-Latn-WF","und-WS":"sm-Latn-WS","und-XK":"sq-Latn-XK","und-Xpeo":"peo-Xpeo-IR","und-Xsux":"akk-Xsux-IQ","und-YE":"ar-Arab-YE","und-Yiii":"ii-Yiii-CN","und-YT":"fr-Latn-YT","und-Zanb":"cmg-Zanb-MN","und-ZW":"sn-Latn-ZW","unr":"unr-Beng-IN","unr-Deva":"unr-Deva-NP","unr-NP":"unr-Deva-NP","unx":"unx-Beng-IN","ur":"ur-Arab-PK","uri":"uri-Latn-ZZ","urt":"urt-Latn-ZZ","urw":"urw-Latn-ZZ","usa":"usa-Latn-ZZ","utr":"utr-Latn-ZZ","uvh":"uvh-Latn-ZZ","uvl":"uvl-Latn-ZZ","uz":"uz-Latn-UZ","uz-AF":"uz-Arab-AF","uz-Arab":"uz-Arab-AF","uz-CN":"uz-Cyrl-CN","vag":"vag-Latn-ZZ","vai":"vai-Vaii-LR","van":"van-Latn-ZZ","ve":"ve-Latn-ZA","vec":"vec-Latn-IT","vep":"vep-Latn-RU","vi":"vi-Latn-VN","vic":"vic-Latn-SX","viv":"viv-Latn-ZZ","vls":"vls-Latn-BE","vmf":"vmf-Latn-DE","vmw":"vmw-Latn-MZ","vo":"vo-Latn-001","vot":"vot-Latn-RU","vro":"vro-Latn-EE","vun":"vun-Latn-TZ","vut":"vut-Latn-ZZ","wa":"wa-Latn-BE","wae":"wae-Latn-CH","waj":"waj-Latn-ZZ","wal":"wal-Ethi-ET","wan":"wan-Latn-ZZ","war":"war-Latn-PH","wbp":"wbp-Latn-AU","wbq":"wbq-Telu-IN","wbr":"wbr-Deva-IN","wci":"wci-Latn-ZZ","wer":"wer-Latn-ZZ","wgi":"wgi-Latn-ZZ","whg":"whg-Latn-ZZ","wib":"wib-Latn-ZZ","wiu":"wiu-Latn-ZZ","wiv":"wiv-Latn-ZZ","wja":"wja-Latn-ZZ","wji":"wji-Latn-ZZ","wls":"wls-Latn-WF","wmo":"wmo-Latn-ZZ","wnc":"wnc-Latn-ZZ","wni":"wni-Arab-KM","wnu":"wnu-Latn-ZZ","wo":"wo-Latn-SN","wob":"wob-Latn-ZZ","wos":"wos-Latn-ZZ","wrs":"wrs-Latn-ZZ","wsk":"wsk-Latn-ZZ","wtm":"wtm-Deva-IN","wuu":"wuu-Hans-CN","wuv":"wuv-Latn-ZZ","wwa":"wwa-Latn-ZZ","xav":"xav-Latn-BR","xbi":"xbi-Latn-ZZ","xcr":"xcr-Cari-TR","xes":"xes-Latn-ZZ","xh":"xh-Latn-ZA","xla":"xla-Latn-ZZ","xlc":"xlc-Lyci-TR","xld":"xld-Lydi-TR","xmf":"xmf-Geor-GE","xmn":"xmn-Mani-CN","xmr":"xmr-Merc-SD","xna":"xna-Narb-SA","xnr":"xnr-Deva-IN","xog":"xog-Latn-UG","xon":"xon-Latn-ZZ","xpr":"xpr-Prti-IR","xrb":"xrb-Latn-ZZ","xsa":"xsa-Sarb-YE","xsi":"xsi-Latn-ZZ","xsm":"xsm-Latn-ZZ","xsr":"xsr-Deva-NP","xwe":"xwe-Latn-ZZ","yam":"yam-Latn-ZZ","yao":"yao-Latn-MZ","yap":"yap-Latn-FM","yas":"yas-Latn-ZZ","yat":"yat-Latn-ZZ","yav":"yav-Latn-CM","yay":"yay-Latn-ZZ","yaz":"yaz-Latn-ZZ","yba":"yba-Latn-ZZ","ybb":"ybb-Latn-CM","yby":"yby-Latn-ZZ","yer":"yer-Latn-ZZ","ygr":"ygr-Latn-ZZ","ygw":"ygw-Latn-ZZ","yi":"yi-Hebr-001","yko":"yko-Latn-ZZ","yle":"yle-Latn-ZZ","ylg":"ylg-Latn-ZZ","yll":"yll-Latn-ZZ","yml":"yml-Latn-ZZ","yo":"yo-Latn-NG","yon":"yon-Latn-ZZ","yrb":"yrb-Latn-ZZ","yre":"yre-Latn-ZZ","yrl":"yrl-Latn-BR","yss":"yss-Latn-ZZ","yua":"yua-Latn-MX","yue":"yue-Hant-HK","yue-CN":"yue-Hans-CN","yue-Hans":"yue-Hans-CN","yuj":"yuj-Latn-ZZ","yut":"yut-Latn-ZZ","yuw":"yuw-Latn-ZZ","za":"za-Latn-CN","zag":"zag-Latn-SD","zdj":"zdj-Arab-KM","zea":"zea-Latn-NL","zgh":"zgh-Tfng-MA","zh":"zh-Hans-CN","zh-AU":"zh-Hant-AU","zh-BN":"zh-Hant-BN","zh-Bopo":"zh-Bopo-TW","zh-GB":"zh-Hant-GB","zh-GF":"zh-Hant-GF","zh-Hanb":"zh-Hanb-TW","zh-Hant":"zh-Hant-TW","zh-HK":"zh-Hant-HK","zh-ID":"zh-Hant-ID","zh-MO":"zh-Hant-MO","zh-MY":"zh-Hant-MY","zh-PA":"zh-Hant-PA","zh-PF":"zh-Hant-PF","zh-PH":"zh-Hant-PH","zh-SR":"zh-Hant-SR","zh-TH":"zh-Hant-TH","zh-TW":"zh-Hant-TW","zh-US":"zh-Hant-US","zh-VN":"zh-Hant-VN","zhx":"zhx-Nshu-CN","zia":"zia-Latn-ZZ","zlm":"zlm-Latn-TG","zmi":"zmi-Latn-MY","zne":"zne-Latn-ZZ","zu":"zu-Latn-ZA","zza":"zza-Latn-TR"}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/metaZones.json": -/*!************************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/metaZones.json ***! - \************************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13774 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"metaZones":{"metazoneInfo":{"timezone":{"Africa":{"Abidjan":[{"usesMetazone":{"_mzone":"GMT"}}],"Accra":[{"usesMetazone":{"_mzone":"GMT"}}],"Addis_Ababa":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Algiers":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1977-10-20 23:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1977-10-20 23:00","_to":"1979-10-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1979-10-25 23:00","_to":"1981-05-01 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1981-05-01 00:00"}}],"Asmera":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Bamako":[{"usesMetazone":{"_mzone":"GMT"}}],"Bangui":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Banjul":[{"usesMetazone":{"_mzone":"GMT"}}],"Bissau":[{"usesMetazone":{"_mzone":"Africa_FarWestern","_to":"1975-01-01 01:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1975-01-01 01:00"}}],"Blantyre":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Brazzaville":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Bujumbura":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Cairo":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Casablanca":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1984-03-16 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1984-03-16 00:00","_to":"1985-12-31 23:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1985-12-31 23:00"}}],"Ceuta":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1984-03-16 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1984-03-16 00:00"}}],"Conakry":[{"usesMetazone":{"_mzone":"GMT"}}],"Dakar":[{"usesMetazone":{"_mzone":"GMT"}}],"Dar_es_Salaam":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Djibouti":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Douala":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"El_Aaiun":[{"usesMetazone":{"_mzone":"Africa_FarWestern","_to":"1976-04-14 01:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1976-04-14 01:00"}}],"Freetown":[{"usesMetazone":{"_mzone":"GMT"}}],"Gaborone":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Harare":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Johannesburg":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Juba":[{"usesMetazone":{"_mzone":"Africa_Central","_to":"2000-01-15 10:00"}},{"usesMetazone":{"_mzone":"Africa_Eastern","_from":"2000-01-15 10:00"}}],"Kampala":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Khartoum":[{"usesMetazone":{"_mzone":"Africa_Central","_to":"2000-01-15 10:00"}},{"usesMetazone":{"_mzone":"Africa_Eastern","_from":"2000-01-15 10:00","_to":"2017-10-31 21:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"2017-10-31 21:00"}}],"Kigali":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Kinshasa":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lagos":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Libreville":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lome":[{"usesMetazone":{"_mzone":"GMT"}}],"Luanda":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lubumbashi":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Lusaka":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Malabo":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Maputo":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Maseru":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Mbabane":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Mogadishu":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Monrovia":[{"usesMetazone":{"_mzone":"Liberia","_to":"1972-05-01 00:45"}},{"usesMetazone":{"_mzone":"GMT","_from":"1972-05-01 00:45"}}],"Nairobi":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Ndjamena":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Niamey":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Nouakchott":[{"usesMetazone":{"_mzone":"GMT"}}],"Ouagadougou":[{"usesMetazone":{"_mzone":"GMT"}}],"Porto-Novo":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Sao_Tome":[{"usesMetazone":{"_mzone":"GMT"}}],"Tripoli":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"1981-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1981-12-31 22:00","_to":"1990-05-03 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-05-03 23:00","_to":"1996-09-29 22:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1996-09-29 22:00","_to":"1997-10-03 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1997-10-03 22:00","_to":"2012-11-10 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"2012-11-10 00:00","_to":"2013-10-25 00:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"2013-10-25 00:00"}}],"Tunis":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Windhoek":[{"usesMetazone":{"_mzone":"Africa_Southern","_to":"1990-03-20 22:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"1990-03-20 22:00","_to":"1994-03-20 22:00"}},{"usesMetazone":{"_mzone":"Africa_Western","_from":"1994-03-20 22:00","_to":"2017-09-03 01:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"2017-09-03 01:00"}}]},"America":{"Adak":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-11-30 10:00"}}],"Anchorage":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 11:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Anguilla":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Antigua":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Araguaina":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Argentina":{"La_Rioja":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-01 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1991-03-01 02:00","_to":"1991-05-07 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-05-07 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Rio_Gallegos":[{"usesMetazone":{"_mzone":"Argentina","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Salta":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00"}}],"San_Juan":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-01 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1991-03-01 02:00","_to":"1991-05-07 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-05-07 04:00","_to":"2004-05-31 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-05-31 03:00","_to":"2004-07-25 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-07-25 04:00"}}],"San_Luis":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-14 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1990-03-14 02:00","_to":"1991-06-01 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-06-01 04:00","_to":"1999-10-03 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1999-10-03 03:00","_to":"2000-03-03 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2000-03-03 03:00","_to":"2004-05-31 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-05-31 03:00","_to":"2004-07-25 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-07-25 04:00","_to":"2008-01-21 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2008-01-21 02:00"}}],"Tucuman":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-13 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-13 04:00"}}],"Ushuaia":[{"usesMetazone":{"_mzone":"Argentina","_to":"2004-05-30 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}]},"Aruba":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Asuncion":[{"usesMetazone":{"_mzone":"Paraguay"}}],"Bahia":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Bahia_Banderas":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1970-01-01 08:00","_to":"2010-04-04 09:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2010-04-04 09:00"}}],"Barbados":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Belem":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Belize":[{"usesMetazone":{"_mzone":"America_Central"}}],"Blanc-Sablon":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Boa_Vista":[{"usesMetazone":{"_mzone":"Amazon"}}],"Bogota":[{"usesMetazone":{"_mzone":"Colombia"}}],"Boise":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Buenos_Aires":[{"usesMetazone":{"_mzone":"Argentina"}}],"Cambridge_Bay":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1999-10-31 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 08:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2000-11-05 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2000-11-05 05:00","_to":"2001-04-01 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"2001-04-01 09:00"}}],"Campo_Grande":[{"usesMetazone":{"_mzone":"Amazon"}}],"Cancun":[{"usesMetazone":{"_mzone":"America_Central","_to":"1981-12-23 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1981-12-23 06:00","_to":"1998-08-02 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1998-08-02 06:00","_to":"2015-02-01 08:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2015-02-01 08:00"}}],"Caracas":[{"usesMetazone":{"_mzone":"Venezuela"}}],"Catamarca":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Cayenne":[{"usesMetazone":{"_mzone":"French_Guiana"}}],"Cayman":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Chicago":[{"usesMetazone":{"_mzone":"America_Central"}}],"Chihuahua":[{"usesMetazone":{"_mzone":"America_Central","_to":"1998-04-05 09:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1998-04-05 09:00"}}],"Coral_Harbour":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Cordoba":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00"}}],"Costa_Rica":[{"usesMetazone":{"_mzone":"America_Central"}}],"Creston":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Cuiaba":[{"usesMetazone":{"_mzone":"Amazon"}}],"Curacao":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Danmarkshavn":[{"usesMetazone":{"_mzone":"Greenland_Western","_to":"1996-01-01 03:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1996-01-01 03:00"}}],"Dawson":[{"usesMetazone":{"_mzone":"Yukon","_to":"1973-10-28 09:00"}},{"usesMetazone":{"_mzone":"America_Pacific","_from":"1973-10-28 09:00"}}],"Dawson_Creek":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1972-08-30 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1972-08-30 09:00"}}],"Denver":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Detroit":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Dominica":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Edmonton":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Eirunepe":[{"usesMetazone":{"_mzone":"Acre","_to":"2008-06-24 05:00"}},{"usesMetazone":{"_mzone":"Amazon","_from":"2008-06-24 05:00","_to":"2013-11-10 04:00"}},{"usesMetazone":{"_mzone":"Acre","_from":"2013-11-10 04:00"}}],"El_Salvador":[{"usesMetazone":{"_mzone":"America_Central"}}],"Fort_Nelson":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"2015-03-08 10:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"2015-03-08 10:00"}}],"Fortaleza":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Glace_Bay":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Godthab":[{"usesMetazone":{"_mzone":"Greenland_Western"}}],"Goose_Bay":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1988-04-03 04:01"}},{"usesMetazone":{"_mzone":"Goose_Bay","_from":"1988-04-03 04:01","_to":"1988-10-30 02:01"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"1988-10-30 02:01"}}],"Grand_Turk":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2015-11-01 06:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"2015-11-01 06:00","_to":"2018-03-11 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2018-03-11 07:00"}}],"Grenada":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Guadeloupe":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Guatemala":[{"usesMetazone":{"_mzone":"America_Central"}}],"Guayaquil":[{"usesMetazone":{"_mzone":"Ecuador"}}],"Guyana":[{"usesMetazone":{"_mzone":"Guyana"}}],"Halifax":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Havana":[{"usesMetazone":{"_mzone":"Cuba"}}],"Hermosillo":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1970-01-01 08:00"}}],"Indiana":{"Knox":[{"usesMetazone":{"_mzone":"America_Central","_to":"1991-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1991-10-27 07:00","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00"}}],"Marengo":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1974-01-06 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1974-01-06 07:00","_to":"1974-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1974-10-27 07:00"}}],"Petersburg":[{"usesMetazone":{"_mzone":"America_Central","_to":"1977-10-30 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1977-10-30 07:00","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-11-04 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-11-04 07:00"}}],"Tell_City":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00"}}],"Vevay":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Vincennes":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-11-04 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-11-04 07:00"}}],"Winamac":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-03-11 08:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-03-11 08:00"}}]},"Indianapolis":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Inuvik":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1979-04-29 10:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1979-04-29 10:00"}}],"Iqaluit":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1999-10-31 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 06:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}],"Jamaica":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Jujuy":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-04 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-06 04:00"}}],"Juneau":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1980-04-27 10:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1980-04-27 10:00","_to":"1980-10-26 10:00"}},{"usesMetazone":{"_mzone":"America_Pacific","_from":"1980-10-26 10:00","_to":"1983-10-30 09:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 09:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Kentucky":{"Monticello":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}]},"Kralendijk":[{"usesMetazone":{"_mzone":"Atlantic"}}],"La_Paz":[{"usesMetazone":{"_mzone":"Bolivia"}}],"Lima":[{"usesMetazone":{"_mzone":"Peru"}}],"Los_Angeles":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Louisville":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1974-01-06 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1974-01-06 07:00","_to":"1974-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1974-10-27 07:00"}}],"Lower_Princes":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Maceio":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Managua":[{"usesMetazone":{"_mzone":"America_Central","_to":"1973-05-01 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1973-05-01 06:00","_to":"1975-02-16 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1975-02-16 05:00","_to":"1992-01-01 10:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1992-01-01 10:00","_to":"1992-09-24 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1992-09-24 05:00","_to":"1993-01-01 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1993-01-01 06:00","_to":"1997-01-01 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1997-01-01 05:00"}}],"Manaus":[{"usesMetazone":{"_mzone":"Amazon"}}],"Marigot":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Martinique":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Matamoros":[{"usesMetazone":{"_mzone":"America_Central"}}],"Mazatlan":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1970-01-01 08:00"}}],"Mendoza":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-04 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1992-10-18 04:00","_to":"2004-05-23 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-09-26 04:00"}}],"Menominee":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1973-04-29 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1973-04-29 07:00"}}],"Merida":[{"usesMetazone":{"_mzone":"America_Central","_to":"1981-12-23 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1981-12-23 06:00","_to":"1982-12-02 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1982-12-02 05:00"}}],"Metlakatla":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"2015-11-01 10:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"2015-11-01 10:00"}}],"Mexico_City":[{"usesMetazone":{"_mzone":"America_Central"}}],"Miquelon":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1980-05-01 04:00"}},{"usesMetazone":{"_mzone":"Pierre_Miquelon","_from":"1980-05-01 04:00"}}],"Moncton":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Monterrey":[{"usesMetazone":{"_mzone":"America_Central"}}],"Montevideo":[{"usesMetazone":{"_mzone":"Uruguay"}}],"Montserrat":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Nassau":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"New_York":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Nipigon":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Nome":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 12:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Noronha":[{"usesMetazone":{"_mzone":"Noronha"}}],"North_Dakota":{"Beulah":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"2010-11-07 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2010-11-07 08:00"}}],"Center":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1992-10-25 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1992-10-25 08:00"}}],"New_Salem":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"2003-10-26 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2003-10-26 08:00"}}]},"Ojinaga":[{"usesMetazone":{"_mzone":"America_Central","_to":"1998-04-05 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1998-04-05 09:00"}}],"Panama":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Pangnirtung":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1995-04-02 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1995-04-02 06:00","_to":"1999-10-31 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 06:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}],"Paramaribo":[{"usesMetazone":{"_mzone":"Dutch_Guiana","_to":"1975-11-20 03:30"}},{"usesMetazone":{"_mzone":"Suriname","_from":"1975-11-20 03:30"}}],"Phoenix":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Port_of_Spain":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Port-au-Prince":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Porto_Velho":[{"usesMetazone":{"_mzone":"Amazon"}}],"Puerto_Rico":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Punta_Arenas":[{"usesMetazone":{"_mzone":"Chile","_to":"2016-12-03 23:00"}}],"Rainy_River":[{"usesMetazone":{"_mzone":"America_Central"}}],"Rankin_Inlet":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2001-04-01 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2001-04-01 08:00"}}],"Recife":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Regina":[{"usesMetazone":{"_mzone":"America_Central"}}],"Resolute":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2001-04-01 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2001-04-01 08:00","_to":"2006-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2006-10-29 07:00","_to":"2007-03-11 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2007-03-11 08:00"}}],"Rio_Branco":[{"usesMetazone":{"_mzone":"Acre","_to":"2008-06-24 05:00"}},{"usesMetazone":{"_mzone":"Amazon","_from":"2008-06-24 05:00","_to":"2013-11-10 04:00"}},{"usesMetazone":{"_mzone":"Acre","_from":"2013-11-10 04:00"}}],"Santa_Isabel":[{"usesMetazone":{"_mzone":"Mexico_Northwest"}}],"Santarem":[{"usesMetazone":{"_mzone":"Amazon","_to":"2008-06-24 04:00"}},{"usesMetazone":{"_mzone":"Brasilia","_from":"2008-06-24 04:00"}}],"Santiago":[{"usesMetazone":{"_mzone":"Chile"}}],"Santo_Domingo":[{"usesMetazone":{"_mzone":"Dominican","_to":"1974-10-27 05:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"1974-10-27 05:00","_to":"2000-10-29 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 06:00","_to":"2000-12-03 06:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"2000-12-03 06:00"}}],"Sao_Paulo":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Scoresbysund":[{"usesMetazone":{"_mzone":"Greenland_Central","_to":"1981-03-29 02:00"}},{"usesMetazone":{"_mzone":"Greenland_Eastern","_from":"1981-03-29 02:00"}}],"Sitka":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1983-10-30 09:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 09:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"St_Barthelemy":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Johns":[{"usesMetazone":{"_mzone":"Newfoundland"}}],"St_Kitts":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Lucia":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Thomas":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Vincent":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Swift_Current":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1972-04-30 09:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1972-04-30 09:00"}}],"Tegucigalpa":[{"usesMetazone":{"_mzone":"America_Central"}}],"Thule":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Thunder_Bay":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Tijuana":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Toronto":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Tortola":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Vancouver":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Whitehorse":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Winnipeg":[{"usesMetazone":{"_mzone":"America_Central"}}],"Yakutat":[{"usesMetazone":{"_mzone":"Yukon","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Yellowknife":[{"usesMetazone":{"_mzone":"America_Mountain"}}]},"Antarctica":{"Casey":[{"usesMetazone":{"_mzone":"Australia_Western","_to":"2009-10-17 18:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2009-10-17 18:00","_to":"2010-03-04 15:00"}},{"usesMetazone":{"_mzone":"Australia_Western","_from":"2010-03-04 15:00","_to":"2011-10-27 18:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2011-10-27 18:00","_to":"2012-02-21 17:00"}},{"usesMetazone":{"_mzone":"Australia_Western","_from":"2012-02-21 17:00","_to":"2016-10-21 16:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2016-10-21 16:00"}}],"Davis":[{"usesMetazone":{"_mzone":"Davis"}}],"DumontDUrville":[{"usesMetazone":{"_mzone":"DumontDUrville"}}],"Macquarie":[{"usesMetazone":{"_mzone":"Australia_Eastern","_to":"2010-04-03 16:00"}},{"usesMetazone":{"_mzone":"Macquarie","_from":"2010-04-03 16:00"}}],"Mawson":[{"usesMetazone":{"_mzone":"Mawson"}}],"McMurdo":[{"usesMetazone":{"_mzone":"New_Zealand"}}],"Palmer":[{"usesMetazone":{"_mzone":"Argentina","_to":"1982-05-01 03:00"}},{"usesMetazone":{"_mzone":"Chile","_from":"1982-05-01 03:00","_to":"2016-12-03 23:00"}}],"Rothera":[{"usesMetazone":{"_mzone":"Rothera"}}],"Syowa":[{"usesMetazone":{"_mzone":"Syowa"}}],"Troll":[{"usesMetazone":{"_mzone":"GMT"}}],"Vostok":[{"usesMetazone":{"_mzone":"Vostok"}}]},"Arctic":{"Longyearbyen":[{"usesMetazone":{"_mzone":"Europe_Central"}}]},"Asia":{"Aden":[{"usesMetazone":{"_mzone":"Arabian"}}],"Almaty":[{"usesMetazone":{"_mzone":"Almaty","_to":"2004-10-30 20:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Eastern","_from":"2004-10-30 20:00"}}],"Amman":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Anadyr":[{"usesMetazone":{"_mzone":"Anadyr","_to":"2010-03-27 14:00"}},{"usesMetazone":{"_mzone":"Magadan","_from":"2010-03-27 14:00","_to":"2014-10-25 14:00"}},{"usesMetazone":{"_mzone":"Anadyr","_from":"2014-10-25 14:00"}}],"Aqtau":[{"usesMetazone":{"_mzone":"Shevchenko","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Aqtau","_from":"1991-12-15 19:00","_to":"2004-10-30 22:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Aqtobe":[{"usesMetazone":{"_mzone":"Aktyubinsk","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Aqtobe","_from":"1991-12-15 19:00","_to":"2004-10-30 21:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2005-10-30 21:00"}}],"Ashgabat":[{"usesMetazone":{"_mzone":"Ashkhabad","_to":"1991-10-26 20:00"}},{"usesMetazone":{"_mzone":"Turkmenistan","_from":"1991-10-26 20:00"}}],"Atyrau":[{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Baghdad":[{"usesMetazone":{"_mzone":"Arabian"}}],"Bahrain":[{"usesMetazone":{"_mzone":"Gulf","_to":"1972-05-31 20:00"}},{"usesMetazone":{"_mzone":"Arabian","_from":"1972-05-31 20:00"}}],"Baku":[{"usesMetazone":{"_mzone":"Baku","_to":"1991-08-29 20:00"}},{"usesMetazone":{"_mzone":"Azerbaijan","_from":"1991-08-29 20:00"}}],"Bangkok":[{"usesMetazone":{"_mzone":"Indochina"}}],"Beirut":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Bishkek":[{"usesMetazone":{"_mzone":"Frunze","_to":"1991-08-30 20:00"}},{"usesMetazone":{"_mzone":"Kyrgystan","_from":"1991-08-30 20:00"}}],"Brunei":[{"usesMetazone":{"_mzone":"Brunei"}}],"Calcutta":[{"usesMetazone":{"_mzone":"India"}}],"Chita":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"2014-10-25 16:00"}},{"usesMetazone":{"_mzone":"Irkutsk","_from":"2014-10-25 16:00","_to":"2016-03-26 18:00"}},{"usesMetazone":{"_mzone":"Yakutsk","_from":"2016-03-26 18:00"}}],"Choibalsan":[{"usesMetazone":{"_mzone":"Mongolia","_to":"1983-03-31 16:00"}},{"usesMetazone":{"_mzone":"Choibalsan","_from":"1983-03-31 16:00"}}],"Colombo":[{"usesMetazone":{"_mzone":"India","_to":"1996-05-24 18:30"}},{"usesMetazone":{"_mzone":"Lanka","_from":"1996-05-24 18:30","_to":"2006-04-14 18:30"}},{"usesMetazone":{"_mzone":"India","_from":"2006-04-14 18:30"}}],"Damascus":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Dhaka":[{"usesMetazone":{"_mzone":"Dacca","_to":"1971-03-25 18:00"}},{"usesMetazone":{"_mzone":"Bangladesh","_from":"1971-03-25 18:00"}}],"Dili":[{"usesMetazone":{"_mzone":"East_Timor","_to":"1976-05-02 15:00"}},{"usesMetazone":{"_mzone":"Indonesia_Central","_from":"1976-05-02 15:00","_to":"2000-09-16 16:00"}},{"usesMetazone":{"_mzone":"East_Timor","_from":"2000-09-16 16:00"}}],"Dubai":[{"usesMetazone":{"_mzone":"Gulf"}}],"Dushanbe":[{"usesMetazone":{"_mzone":"Dushanbe","_to":"1991-09-08 21:00"}},{"usesMetazone":{"_mzone":"Tajikistan","_from":"1991-09-08 21:00"}}],"Famagusta":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"2016-09-07 21:00"}}],"Gaza":[{"usesMetazone":{"_mzone":"Israel","_to":"1995-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1995-12-31 22:00"}}],"Hebron":[{"usesMetazone":{"_mzone":"Israel","_to":"1995-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1995-12-31 22:00"}}],"Hong_Kong":[{"usesMetazone":{"_mzone":"Hong_Kong"}}],"Hovd":[{"usesMetazone":{"_mzone":"Hovd"}}],"Irkutsk":[{"usesMetazone":{"_mzone":"Irkutsk"}}],"Jakarta":[{"usesMetazone":{"_mzone":"Indonesia_Western"}}],"Jayapura":[{"usesMetazone":{"_mzone":"Indonesia_Eastern"}}],"Jerusalem":[{"usesMetazone":{"_mzone":"Israel"}}],"Kabul":[{"usesMetazone":{"_mzone":"Afghanistan"}}],"Kamchatka":[{"usesMetazone":{"_mzone":"Kamchatka"}}],"Karachi":[{"usesMetazone":{"_mzone":"Karachi","_to":"1971-03-25 19:00"}},{"usesMetazone":{"_mzone":"Pakistan","_from":"1971-03-25 19:00"}}],"Katmandu":[{"usesMetazone":{"_mzone":"Nepal"}}],"Khandyga":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"2003-12-31 15:00"}},{"usesMetazone":{"_mzone":"Vladivostok","_from":"2003-12-31 15:00","_to":"2011-09-12 13:00"}},{"usesMetazone":{"_mzone":"Yakutsk","_from":"2011-09-12 13:00"}}],"Krasnoyarsk":[{"usesMetazone":{"_mzone":"Krasnoyarsk"}}],"Kuala_Lumpur":[{"usesMetazone":{"_mzone":"Malaya","_to":"1981-12-31 16:30"}},{"usesMetazone":{"_mzone":"Malaysia","_from":"1981-12-31 16:30"}}],"Kuching":[{"usesMetazone":{"_mzone":"Borneo","_to":"1981-12-31 16:00"}},{"usesMetazone":{"_mzone":"Malaysia","_from":"1981-12-31 16:00"}}],"Kuwait":[{"usesMetazone":{"_mzone":"Arabian"}}],"Macau":[{"usesMetazone":{"_mzone":"Macau","_to":"1999-12-19 16:00"}},{"usesMetazone":{"_mzone":"China","_from":"1999-12-19 16:00"}}],"Magadan":[{"usesMetazone":{"_mzone":"Magadan"}}],"Makassar":[{"usesMetazone":{"_mzone":"Indonesia_Central"}}],"Manila":[{"usesMetazone":{"_mzone":"Philippines"}}],"Muscat":[{"usesMetazone":{"_mzone":"Gulf"}}],"Nicosia":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Novokuznetsk":[{"usesMetazone":{"_mzone":"Krasnoyarsk","_to":"2010-03-27 19:00"}},{"usesMetazone":{"_mzone":"Novosibirsk","_from":"2010-03-27 19:00","_to":"2014-10-25 19:00"}},{"usesMetazone":{"_mzone":"Krasnoyarsk","_from":"2014-10-25 19:00"}}],"Novosibirsk":[{"usesMetazone":{"_mzone":"Novosibirsk"}}],"Omsk":[{"usesMetazone":{"_mzone":"Omsk"}}],"Oral":[{"usesMetazone":{"_mzone":"Uralsk","_to":"1991-12-15 20:00"}},{"usesMetazone":{"_mzone":"Oral","_from":"1991-12-15 20:00","_to":"2004-10-30 22:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Phnom_Penh":[{"usesMetazone":{"_mzone":"Indochina"}}],"Pontianak":[{"usesMetazone":{"_mzone":"Indonesia_Central","_to":"1987-12-31 16:00"}},{"usesMetazone":{"_mzone":"Indonesia_Western","_from":"1987-12-31 16:00"}}],"Pyongyang":[{"usesMetazone":{"_mzone":"Korea","_to":"2015-08-14 15:00"}},{"usesMetazone":{"_mzone":"Pyongyang","_from":"2015-08-14 15:00"}}],"Qatar":[{"usesMetazone":{"_mzone":"Gulf","_to":"1972-05-31 20:00"}},{"usesMetazone":{"_mzone":"Arabian","_from":"1972-05-31 20:00"}}],"Qyzylorda":[{"usesMetazone":{"_mzone":"Kizilorda","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Qyzylorda","_from":"1991-12-15 19:00","_to":"2004-10-30 21:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Eastern","_from":"2004-10-30 21:00"}}],"Rangoon":[{"usesMetazone":{"_mzone":"Myanmar"}}],"Riyadh":[{"usesMetazone":{"_mzone":"Arabian"}}],"Saigon":[{"usesMetazone":{"_mzone":"Indochina","_from":"1975-06-12 16:00"}}],"Sakhalin":[{"usesMetazone":{"_mzone":"Sakhalin"}}],"Samarkand":[{"usesMetazone":{"_mzone":"Samarkand","_to":"1981-09-30 18:00"}},{"usesMetazone":{"_mzone":"Tashkent","_from":"1981-09-30 18:00","_to":"1982-03-31 18:00"}},{"usesMetazone":{"_mzone":"Samarkand","_from":"1982-03-31 18:00","_to":"1991-08-31 18:00"}},{"usesMetazone":{"_mzone":"Uzbekistan","_from":"1991-08-31 18:00"}}],"Seoul":[{"usesMetazone":{"_mzone":"Korea"}}],"Shanghai":[{"usesMetazone":{"_mzone":"China"}}],"Singapore":[{"usesMetazone":{"_mzone":"Singapore"}}],"Srednekolymsk":[{"usesMetazone":{"_mzone":"Magadan","_to":"2014-10-25 14:00"}}],"Taipei":[{"usesMetazone":{"_mzone":"Taipei"}}],"Tashkent":[{"usesMetazone":{"_mzone":"Tashkent","_to":"1991-08-31 18:00"}},{"usesMetazone":{"_mzone":"Uzbekistan","_from":"1991-08-31 18:00"}}],"Tbilisi":[{"usesMetazone":{"_mzone":"Tbilisi","_to":"1991-04-08 20:00"}},{"usesMetazone":{"_mzone":"Georgia","_from":"1991-04-08 20:00"}}],"Tehran":[{"usesMetazone":{"_mzone":"Iran"}}],"Thimphu":[{"usesMetazone":{"_mzone":"India","_to":"1987-09-30 18:30"}},{"usesMetazone":{"_mzone":"Bhutan","_from":"1987-09-30 18:30"}}],"Tokyo":[{"usesMetazone":{"_mzone":"Japan"}}],"Ulaanbaatar":[{"usesMetazone":{"_mzone":"Mongolia"}}],"Urumqi":[{"usesMetazone":{"_mzone":"Urumqi"}}],"Ust-Nera":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"1981-03-31 15:00"}},{"usesMetazone":{"_mzone":"Magadan","_from":"1981-03-31 15:00","_to":"2011-09-12 12:00"}},{"usesMetazone":{"_mzone":"Vladivostok","_from":"2011-09-12 12:00"}}],"Vientiane":[{"usesMetazone":{"_mzone":"Indochina"}}],"Vladivostok":[{"usesMetazone":{"_mzone":"Vladivostok"}}],"Yakutsk":[{"usesMetazone":{"_mzone":"Yakutsk"}}],"Yekaterinburg":[{"usesMetazone":{"_mzone":"Sverdlovsk","_to":"1992-01-18 22:00"}},{"usesMetazone":{"_mzone":"Yekaterinburg","_from":"1992-01-18 22:00"}}],"Yerevan":[{"usesMetazone":{"_mzone":"Yerevan","_to":"1991-09-22 20:00"}},{"usesMetazone":{"_mzone":"Armenia","_from":"1991-09-22 20:00"}}]},"Atlantic":{"Azores":[{"usesMetazone":{"_mzone":"Azores","_to":"1992-09-27 02:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1992-09-27 02:00","_to":"1993-03-28 01:00"}},{"usesMetazone":{"_mzone":"Azores","_from":"1993-03-28 01:00"}}],"Bermuda":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Canary":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Cape_Verde":[{"usesMetazone":{"_mzone":"Cape_Verde"}}],"Faeroe":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Madeira":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Reykjavik":[{"usesMetazone":{"_mzone":"GMT"}}],"South_Georgia":[{"usesMetazone":{"_mzone":"South_Georgia"}}],"St_Helena":[{"usesMetazone":{"_mzone":"GMT"}}],"Stanley":[{"usesMetazone":{"_mzone":"Falkland"}}]},"Australia":{"Adelaide":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Brisbane":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Broken_Hill":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Currie":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Darwin":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Eucla":[{"usesMetazone":{"_mzone":"Australia_CentralWestern"}}],"Hobart":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Lindeman":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Lord_Howe":[{"usesMetazone":{"_mzone":"Australia_Eastern","_to":"1981-02-28 14:00"}},{"usesMetazone":{"_mzone":"Lord_Howe","_from":"1981-02-28 14:00"}}],"Melbourne":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Perth":[{"usesMetazone":{"_mzone":"Australia_Western"}}],"Sydney":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}]},"CST6CDT":[{"usesMetazone":{"_mzone":"America_Central"}}],"EST5EDT":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Etc":{"GMT":[{"usesMetazone":{"_mzone":"GMT"}}]},"Europe":{"Amsterdam":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Andorra":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Astrakhan":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00","_to":"2016-03-26 23:00"}}],"Athens":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Belgrade":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Berlin":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Bratislava":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Brussels":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Bucharest":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Budapest":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Busingen":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Chisinau":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-05-05 21:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-05-05 21:00"}}],"Copenhagen":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Dublin":[{"usesMetazone":{"_mzone":"Irish","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Gibraltar":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Guernsey":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Helsinki":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Isle_of_Man":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Istanbul":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"1978-10-14 21:00"}},{"usesMetazone":{"_mzone":"Turkey","_from":"1978-10-14 21:00","_to":"1985-04-19 21:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1985-04-19 21:00","_to":"2016-09-06 21:00"}},{"usesMetazone":{"_mzone":"Turkey","_from":"2016-09-06 21:00"}}],"Jersey":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Kaliningrad":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00","_to":"2011-03-27 00:00"}},{"usesMetazone":{"_mzone":"Europe_Further_Eastern","_from":"2011-03-27 00:00","_to":"2014-10-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"2014-10-25 23:00"}}],"Kiev":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-06-30 22:00"}}],"Lisbon":[{"usesMetazone":{"_mzone":"Europe_Central","_to":"1976-09-26 00:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1976-09-26 00:00","_to":"1992-09-27 01:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1992-09-27 01:00","_to":"1996-03-31 01:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1996-03-31 01:00"}}],"Ljubljana":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"London":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Luxembourg":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Madrid":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Malta":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Mariehamn":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Minsk":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"2011-03-27 00:00"}},{"usesMetazone":{"_mzone":"Europe_Further_Eastern","_from":"2011-03-27 00:00","_to":"2014-10-26 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"2014-10-26 22:00"}}],"Monaco":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Moscow":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"1992-01-19 00:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1992-01-19 00:00"}}],"Oslo":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Paris":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Podgorica":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Prague":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Riga":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00"}}],"Rome":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Samara":[{"usesMetazone":{"_mzone":"Kuybyshev","_to":"1989-03-25 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1989-03-25 22:00","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"1991-09-29 00:00"}},{"usesMetazone":{"_mzone":"Samara","_from":"1991-09-29 00:00"}}],"San_Marino":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Sarajevo":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Saratov":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00","_to":"2016-12-03 23:00"}}],"Simferopol":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-06-30 23:00","_to":"1994-04-30 21:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1994-04-30 21:00","_to":"1997-03-30 01:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1997-03-30 01:00","_to":"2014-03-30 00:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"2014-03-30 00:00"}}],"Skopje":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Sofia":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Stockholm":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Tallinn":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00"}}],"Tirane":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Ulyanovsk":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-01-19 00:00","_to":"2016-03-26 23:00"}}],"Uzhgorod":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1990-06-30 23:00","_to":"1991-03-31 02:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-31 02:00"}}],"Vaduz":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vatican":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vienna":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vilnius":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00","_to":"1998-03-29 01:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1998-03-29 01:00","_to":"1999-10-31 01:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1999-10-31 01:00"}}],"Volgograd":[{"usesMetazone":{"_mzone":"Volgograd","_to":"1992-03-28 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00"}}],"Warsaw":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Zagreb":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Zaporozhye":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00"}}],"Zurich":[{"usesMetazone":{"_mzone":"Europe_Central"}}]},"Indian":{"Antananarivo":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Chagos":[{"usesMetazone":{"_mzone":"Indian_Ocean"}}],"Christmas":[{"usesMetazone":{"_mzone":"Christmas"}}],"Cocos":[{"usesMetazone":{"_mzone":"Cocos"}}],"Comoro":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Kerguelen":[{"usesMetazone":{"_mzone":"French_Southern"}}],"Mahe":[{"usesMetazone":{"_mzone":"Seychelles"}}],"Maldives":[{"usesMetazone":{"_mzone":"Maldives"}}],"Mauritius":[{"usesMetazone":{"_mzone":"Mauritius"}}],"Mayotte":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Reunion":[{"usesMetazone":{"_mzone":"Reunion"}}]},"MST7MDT":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Pacific":{"Apia":[{"usesMetazone":{"_mzone":"Apia"}}],"Auckland":[{"usesMetazone":{"_mzone":"New_Zealand"}}],"Bougainville":[{"usesMetazone":{"_mzone":"Papua_New_Guinea","_to":"2014-12-27 16:00"}}],"Chatham":[{"usesMetazone":{"_mzone":"Chatham"}}],"Easter":[{"usesMetazone":{"_mzone":"Easter"}}],"Efate":[{"usesMetazone":{"_mzone":"Vanuatu"}}],"Enderbury":[{"usesMetazone":{"_mzone":"Phoenix_Islands"}}],"Fakaofo":[{"usesMetazone":{"_mzone":"Tokelau"}}],"Fiji":[{"usesMetazone":{"_mzone":"Fiji"}}],"Funafuti":[{"usesMetazone":{"_mzone":"Tuvalu"}}],"Galapagos":[{"usesMetazone":{"_mzone":"Ecuador","_to":"1986-01-01 05:00"}},{"usesMetazone":{"_mzone":"Galapagos","_from":"1986-01-01 05:00"}}],"Gambier":[{"usesMetazone":{"_mzone":"Gambier"}}],"Guadalcanal":[{"usesMetazone":{"_mzone":"Solomon"}}],"Guam":[{"usesMetazone":{"_mzone":"Guam","_to":"2000-12-22 14:00"}},{"usesMetazone":{"_mzone":"Chamorro","_from":"2000-12-22 14:00"}}],"Honolulu":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-10-30 11:00"}}],"Johnston":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-10-30 11:00"}}],"Kiritimati":[{"usesMetazone":{"_mzone":"Line_Islands"}}],"Kosrae":[{"usesMetazone":{"_mzone":"Kosrae"}}],"Kwajalein":[{"usesMetazone":{"_mzone":"Kwajalein","_to":"1993-08-20 12:00"}},{"usesMetazone":{"_mzone":"Marshall_Islands","_from":"1993-08-20 12:00"}}],"Majuro":[{"usesMetazone":{"_mzone":"Marshall_Islands"}}],"Marquesas":[{"usesMetazone":{"_mzone":"Marquesas"}}],"Midway":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Samoa","_from":"1983-10-30 12:00"}}],"Nauru":[{"usesMetazone":{"_mzone":"Nauru"}}],"Niue":[{"usesMetazone":{"_mzone":"Niue"}}],"Norfolk":[{"usesMetazone":{"_mzone":"Norfolk"}}],"Noumea":[{"usesMetazone":{"_mzone":"New_Caledonia"}}],"Pago_Pago":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Samoa","_from":"1983-10-30 12:00"}}],"Palau":[{"usesMetazone":{"_mzone":"Palau"}}],"Pitcairn":[{"usesMetazone":{"_mzone":"Pitcairn"}}],"Ponape":[{"usesMetazone":{"_mzone":"Ponape"}}],"Port_Moresby":[{"usesMetazone":{"_mzone":"Papua_New_Guinea"}}],"Rarotonga":[{"usesMetazone":{"_mzone":"Cook"}}],"Saipan":[{"usesMetazone":{"_mzone":"North_Mariana","_to":"2000-12-22 14:00"}},{"usesMetazone":{"_mzone":"Chamorro","_from":"2000-12-22 14:00"}}],"Tahiti":[{"usesMetazone":{"_mzone":"Tahiti"}}],"Tarawa":[{"usesMetazone":{"_mzone":"Gilbert_Islands"}}],"Tongatapu":[{"usesMetazone":{"_mzone":"Tonga"}}],"Truk":[{"usesMetazone":{"_mzone":"Truk"}}],"Wake":[{"usesMetazone":{"_mzone":"Wake"}}],"Wallis":[{"usesMetazone":{"_mzone":"Wallis"}}]},"PST8PDT":[{"usesMetazone":{"_mzone":"America_Pacific"}}]}},"metazones":[{"mapZone":{"_other":"Acre","_type":"America/Rio_Branco","_territory":"001"}},{"mapZone":{"_other":"Afghanistan","_type":"Asia/Kabul","_territory":"001"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Maputo","_territory":"001"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Bujumbura","_territory":"BI"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Gaborone","_territory":"BW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Lubumbashi","_territory":"CD"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Blantyre","_territory":"MW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Kigali","_territory":"RW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Lusaka","_territory":"ZM"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Harare","_territory":"ZW"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Nairobi","_territory":"001"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Djibouti","_territory":"DJ"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Asmera","_territory":"ER"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Addis_Ababa","_territory":"ET"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Comoro","_territory":"KM"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Antananarivo","_territory":"MG"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Mogadishu","_territory":"SO"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Dar_es_Salaam","_territory":"TZ"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Kampala","_territory":"UG"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Mayotte","_territory":"YT"}},{"mapZone":{"_other":"Africa_FarWestern","_type":"Africa/El_Aaiun","_territory":"001"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Johannesburg","_territory":"001"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Maseru","_territory":"LS"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Mbabane","_territory":"SZ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Lagos","_territory":"001"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Luanda","_territory":"AO"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Porto-Novo","_territory":"BJ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Kinshasa","_territory":"CD"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Bangui","_territory":"CF"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Brazzaville","_territory":"CG"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Douala","_territory":"CM"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Libreville","_territory":"GA"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Malabo","_territory":"GQ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Niamey","_territory":"NE"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Ndjamena","_territory":"TD"}},{"mapZone":{"_other":"Aktyubinsk","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Alaska","_type":"America/Juneau","_territory":"001"}},{"mapZone":{"_other":"Alaska_Hawaii","_type":"America/Anchorage","_territory":"001"}},{"mapZone":{"_other":"Almaty","_type":"Asia/Almaty","_territory":"001"}},{"mapZone":{"_other":"Amazon","_type":"America/Manaus","_territory":"001"}},{"mapZone":{"_other":"America_Central","_type":"America/Chicago","_territory":"001"}},{"mapZone":{"_other":"America_Central","_type":"America/Belize","_territory":"BZ"}},{"mapZone":{"_other":"America_Central","_type":"America/Winnipeg","_territory":"CA"}},{"mapZone":{"_other":"America_Central","_type":"America/Costa_Rica","_territory":"CR"}},{"mapZone":{"_other":"America_Central","_type":"America/Guatemala","_territory":"GT"}},{"mapZone":{"_other":"America_Central","_type":"America/Tegucigalpa","_territory":"HN"}},{"mapZone":{"_other":"America_Central","_type":"America/Mexico_City","_territory":"MX"}},{"mapZone":{"_other":"America_Central","_type":"America/El_Salvador","_territory":"SV"}},{"mapZone":{"_other":"America_Eastern","_type":"America/New_York","_territory":"001"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Nassau","_territory":"BS"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Toronto","_territory":"CA"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Port-au-Prince","_territory":"HT"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Jamaica","_territory":"JM"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Cayman","_territory":"KY"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Panama","_territory":"PA"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Denver","_territory":"001"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Edmonton","_territory":"CA"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Hermosillo","_territory":"MX"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Los_Angeles","_territory":"001"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Vancouver","_territory":"CA"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Tijuana","_territory":"MX"}},{"mapZone":{"_other":"Anadyr","_type":"Asia/Anadyr","_territory":"001"}},{"mapZone":{"_other":"Apia","_type":"Pacific/Apia","_territory":"001"}},{"mapZone":{"_other":"Aqtau","_type":"Asia/Aqtau","_territory":"001"}},{"mapZone":{"_other":"Aqtobe","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Riyadh","_territory":"001"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Bahrain","_territory":"BH"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Baghdad","_territory":"IQ"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Kuwait","_territory":"KW"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Qatar","_territory":"QA"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Aden","_territory":"YE"}},{"mapZone":{"_other":"Argentina","_type":"America/Buenos_Aires","_territory":"001"}},{"mapZone":{"_other":"Argentina_Western","_type":"America/Argentina/San_Luis","_territory":"001"}},{"mapZone":{"_other":"Armenia","_type":"Asia/Yerevan","_territory":"001"}},{"mapZone":{"_other":"Ashkhabad","_type":"Asia/Ashgabat","_territory":"001"}},{"mapZone":{"_other":"Atlantic","_type":"America/Halifax","_territory":"001"}},{"mapZone":{"_other":"Atlantic","_type":"America/Antigua","_territory":"AG"}},{"mapZone":{"_other":"Atlantic","_type":"America/Anguilla","_territory":"AI"}},{"mapZone":{"_other":"Atlantic","_type":"America/Curacao","_territory":"AN"}},{"mapZone":{"_other":"Atlantic","_type":"America/Aruba","_territory":"AW"}},{"mapZone":{"_other":"Atlantic","_type":"America/Barbados","_territory":"BB"}},{"mapZone":{"_other":"Atlantic","_type":"Atlantic/Bermuda","_territory":"BM"}},{"mapZone":{"_other":"Atlantic","_type":"America/Kralendijk","_territory":"BQ"}},{"mapZone":{"_other":"Atlantic","_type":"America/Dominica","_territory":"DM"}},{"mapZone":{"_other":"Atlantic","_type":"America/Grenada","_territory":"GD"}},{"mapZone":{"_other":"Atlantic","_type":"America/Thule","_territory":"GL"}},{"mapZone":{"_other":"Atlantic","_type":"America/Guadeloupe","_territory":"GP"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Kitts","_territory":"KN"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Lucia","_territory":"LC"}},{"mapZone":{"_other":"Atlantic","_type":"America/Marigot","_territory":"MF"}},{"mapZone":{"_other":"Atlantic","_type":"America/Martinique","_territory":"MQ"}},{"mapZone":{"_other":"Atlantic","_type":"America/Montserrat","_territory":"MS"}},{"mapZone":{"_other":"Atlantic","_type":"America/Puerto_Rico","_territory":"PR"}},{"mapZone":{"_other":"Atlantic","_type":"America/Lower_Princes","_territory":"SX"}},{"mapZone":{"_other":"Atlantic","_type":"America/Port_of_Spain","_territory":"TT"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Vincent","_territory":"VC"}},{"mapZone":{"_other":"Atlantic","_type":"America/Tortola","_territory":"VG"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Thomas","_territory":"VI"}},{"mapZone":{"_other":"Australia_Central","_type":"Australia/Adelaide","_territory":"001"}},{"mapZone":{"_other":"Australia_CentralWestern","_type":"Australia/Eucla","_territory":"001"}},{"mapZone":{"_other":"Australia_Eastern","_type":"Australia/Sydney","_territory":"001"}},{"mapZone":{"_other":"Australia_Western","_type":"Australia/Perth","_territory":"001"}},{"mapZone":{"_other":"Azerbaijan","_type":"Asia/Baku","_territory":"001"}},{"mapZone":{"_other":"Azores","_type":"Atlantic/Azores","_territory":"001"}},{"mapZone":{"_other":"Baku","_type":"Asia/Baku","_territory":"001"}},{"mapZone":{"_other":"Bangladesh","_type":"Asia/Dhaka","_territory":"001"}},{"mapZone":{"_other":"Bering","_type":"America/Adak","_territory":"001"}},{"mapZone":{"_other":"Bhutan","_type":"Asia/Thimphu","_territory":"001"}},{"mapZone":{"_other":"Bolivia","_type":"America/La_Paz","_territory":"001"}},{"mapZone":{"_other":"Borneo","_type":"Asia/Kuching","_territory":"001"}},{"mapZone":{"_other":"Brasilia","_type":"America/Sao_Paulo","_territory":"001"}},{"mapZone":{"_other":"British","_type":"Europe/London","_territory":"001"}},{"mapZone":{"_other":"Brunei","_type":"Asia/Brunei","_territory":"001"}},{"mapZone":{"_other":"Cape_Verde","_type":"Atlantic/Cape_Verde","_territory":"001"}},{"mapZone":{"_other":"Casey","_type":"Antarctica/Casey","_territory":"001"}},{"mapZone":{"_other":"Chamorro","_type":"Pacific/Saipan","_territory":"001"}},{"mapZone":{"_other":"Chamorro","_type":"Pacific/Guam","_territory":"GU"}},{"mapZone":{"_other":"Chatham","_type":"Pacific/Chatham","_territory":"001"}},{"mapZone":{"_other":"Chile","_type":"America/Santiago","_territory":"001"}},{"mapZone":{"_other":"China","_type":"Asia/Shanghai","_territory":"001"}},{"mapZone":{"_other":"Choibalsan","_type":"Asia/Choibalsan","_territory":"001"}},{"mapZone":{"_other":"Christmas","_type":"Indian/Christmas","_territory":"001"}},{"mapZone":{"_other":"Cocos","_type":"Indian/Cocos","_territory":"001"}},{"mapZone":{"_other":"Colombia","_type":"America/Bogota","_territory":"001"}},{"mapZone":{"_other":"Cook","_type":"Pacific/Rarotonga","_territory":"001"}},{"mapZone":{"_other":"Cuba","_type":"America/Havana","_territory":"001"}},{"mapZone":{"_other":"Dacca","_type":"Asia/Dhaka","_territory":"001"}},{"mapZone":{"_other":"Davis","_type":"Antarctica/Davis","_territory":"001"}},{"mapZone":{"_other":"Dominican","_type":"America/Santo_Domingo","_territory":"001"}},{"mapZone":{"_other":"DumontDUrville","_type":"Antarctica/DumontDUrville","_territory":"001"}},{"mapZone":{"_other":"Dushanbe","_type":"Asia/Dushanbe","_territory":"001"}},{"mapZone":{"_other":"Dutch_Guiana","_type":"America/Paramaribo","_territory":"001"}},{"mapZone":{"_other":"East_Timor","_type":"Asia/Dili","_territory":"001"}},{"mapZone":{"_other":"Easter","_type":"Pacific/Easter","_territory":"001"}},{"mapZone":{"_other":"Ecuador","_type":"America/Guayaquil","_territory":"001"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Paris","_territory":"001"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Andorra","_territory":"AD"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Tirane","_territory":"AL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vienna","_territory":"AT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Sarajevo","_territory":"BA"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Brussels","_territory":"BE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Zurich","_territory":"CH"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Prague","_territory":"CZ"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Berlin","_territory":"DE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Copenhagen","_territory":"DK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Madrid","_territory":"ES"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Gibraltar","_territory":"GI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Zagreb","_territory":"HR"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Budapest","_territory":"HU"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Rome","_territory":"IT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vaduz","_territory":"LI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Luxembourg","_territory":"LU"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Monaco","_territory":"MC"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Podgorica","_territory":"ME"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Skopje","_territory":"MK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Malta","_territory":"MT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Amsterdam","_territory":"NL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Oslo","_territory":"NO"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Warsaw","_territory":"PL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Belgrade","_territory":"RS"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Stockholm","_territory":"SE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Ljubljana","_territory":"SI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Bratislava","_territory":"SK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/San_Marino","_territory":"SM"}},{"mapZone":{"_other":"Europe_Central","_type":"Africa/Tunis","_territory":"TN"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vatican","_territory":"VA"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Belgrade","_territory":"XK"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Bucharest","_territory":"001"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Mariehamn","_territory":"AX"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Sofia","_territory":"BG"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Nicosia","_territory":"CY"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Africa/Cairo","_territory":"EG"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Helsinki","_territory":"FI"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Athens","_territory":"GR"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Amman","_territory":"JO"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Beirut","_territory":"LB"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Damascus","_territory":"SY"}},{"mapZone":{"_other":"Europe_Further_Eastern","_type":"Europe/Minsk","_territory":"001"}},{"mapZone":{"_other":"Europe_Further_Eastern","_type":"Europe/Kaliningrad","_territory":"RU"}},{"mapZone":{"_other":"Europe_Western","_type":"Atlantic/Canary","_territory":"001"}},{"mapZone":{"_other":"Europe_Western","_type":"Atlantic/Faeroe","_territory":"FO"}},{"mapZone":{"_other":"Falkland","_type":"Atlantic/Stanley","_territory":"001"}},{"mapZone":{"_other":"Fiji","_type":"Pacific/Fiji","_territory":"001"}},{"mapZone":{"_other":"French_Guiana","_type":"America/Cayenne","_territory":"001"}},{"mapZone":{"_other":"French_Southern","_type":"Indian/Kerguelen","_territory":"001"}},{"mapZone":{"_other":"Frunze","_type":"Asia/Bishkek","_territory":"001"}},{"mapZone":{"_other":"Galapagos","_type":"Pacific/Galapagos","_territory":"001"}},{"mapZone":{"_other":"Gambier","_type":"Pacific/Gambier","_territory":"001"}},{"mapZone":{"_other":"Georgia","_type":"Asia/Tbilisi","_territory":"001"}},{"mapZone":{"_other":"Gilbert_Islands","_type":"Pacific/Tarawa","_territory":"001"}},{"mapZone":{"_other":"GMT","_type":"Atlantic/Reykjavik","_territory":"001"}},{"mapZone":{"_other":"GMT","_type":"Africa/Ouagadougou","_territory":"BF"}},{"mapZone":{"_other":"GMT","_type":"Africa/Abidjan","_territory":"CI"}},{"mapZone":{"_other":"GMT","_type":"Europe/London","_territory":"GB"}},{"mapZone":{"_other":"GMT","_type":"Africa/Accra","_territory":"GH"}},{"mapZone":{"_other":"GMT","_type":"Africa/Banjul","_territory":"GM"}},{"mapZone":{"_other":"GMT","_type":"Africa/Conakry","_territory":"GN"}},{"mapZone":{"_other":"GMT","_type":"Europe/Dublin","_territory":"IE"}},{"mapZone":{"_other":"GMT","_type":"Africa/Bamako","_territory":"ML"}},{"mapZone":{"_other":"GMT","_type":"Africa/Nouakchott","_territory":"MR"}},{"mapZone":{"_other":"GMT","_type":"Atlantic/St_Helena","_territory":"SH"}},{"mapZone":{"_other":"GMT","_type":"Africa/Freetown","_territory":"SL"}},{"mapZone":{"_other":"GMT","_type":"Africa/Dakar","_territory":"SN"}},{"mapZone":{"_other":"GMT","_type":"Africa/Sao_Tome","_territory":"ST"}},{"mapZone":{"_other":"GMT","_type":"Africa/Lome","_territory":"TG"}},{"mapZone":{"_other":"Goose_Bay","_type":"America/Goose_Bay","_territory":"001"}},{"mapZone":{"_other":"Greenland_Central","_type":"America/Scoresbysund","_territory":"001"}},{"mapZone":{"_other":"Greenland_Eastern","_type":"America/Scoresbysund","_territory":"001"}},{"mapZone":{"_other":"Greenland_Western","_type":"America/Godthab","_territory":"001"}},{"mapZone":{"_other":"Guam","_type":"Pacific/Guam","_territory":"001"}},{"mapZone":{"_other":"Gulf","_type":"Asia/Dubai","_territory":"001"}},{"mapZone":{"_other":"Gulf","_type":"Asia/Muscat","_territory":"OM"}},{"mapZone":{"_other":"Guyana","_type":"America/Guyana","_territory":"001"}},{"mapZone":{"_other":"Hawaii_Aleutian","_type":"Pacific/Honolulu","_territory":"001"}},{"mapZone":{"_other":"Hong_Kong","_type":"Asia/Hong_Kong","_territory":"001"}},{"mapZone":{"_other":"Hovd","_type":"Asia/Hovd","_territory":"001"}},{"mapZone":{"_other":"India","_type":"Asia/Calcutta","_territory":"001"}},{"mapZone":{"_other":"India","_type":"Asia/Colombo","_territory":"LK"}},{"mapZone":{"_other":"Indian_Ocean","_type":"Indian/Chagos","_territory":"001"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Bangkok","_territory":"001"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Phnom_Penh","_territory":"KH"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Vientiane","_territory":"LA"}},{"mapZone":{"_other":"Indonesia_Central","_type":"Asia/Makassar","_territory":"001"}},{"mapZone":{"_other":"Indonesia_Eastern","_type":"Asia/Jayapura","_territory":"001"}},{"mapZone":{"_other":"Indonesia_Western","_type":"Asia/Jakarta","_territory":"001"}},{"mapZone":{"_other":"Iran","_type":"Asia/Tehran","_territory":"001"}},{"mapZone":{"_other":"Irish","_type":"Europe/Dublin","_territory":"001"}},{"mapZone":{"_other":"Irkutsk","_type":"Asia/Irkutsk","_territory":"001"}},{"mapZone":{"_other":"Israel","_type":"Asia/Jerusalem","_territory":"001"}},{"mapZone":{"_other":"Japan","_type":"Asia/Tokyo","_territory":"001"}},{"mapZone":{"_other":"Kamchatka","_type":"Asia/Kamchatka","_territory":"001"}},{"mapZone":{"_other":"Karachi","_type":"Asia/Karachi","_territory":"001"}},{"mapZone":{"_other":"Kazakhstan_Eastern","_type":"Asia/Almaty","_territory":"001"}},{"mapZone":{"_other":"Kazakhstan_Western","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Kizilorda","_type":"Asia/Qyzylorda","_territory":"001"}},{"mapZone":{"_other":"Korea","_type":"Asia/Seoul","_territory":"001"}},{"mapZone":{"_other":"Kosrae","_type":"Pacific/Kosrae","_territory":"001"}},{"mapZone":{"_other":"Krasnoyarsk","_type":"Asia/Krasnoyarsk","_territory":"001"}},{"mapZone":{"_other":"Kuybyshev","_type":"Europe/Samara","_territory":"001"}},{"mapZone":{"_other":"Kwajalein","_type":"Pacific/Kwajalein","_territory":"001"}},{"mapZone":{"_other":"Kyrgystan","_type":"Asia/Bishkek","_territory":"001"}},{"mapZone":{"_other":"Lanka","_type":"Asia/Colombo","_territory":"001"}},{"mapZone":{"_other":"Liberia","_type":"Africa/Monrovia","_territory":"001"}},{"mapZone":{"_other":"Line_Islands","_type":"Pacific/Kiritimati","_territory":"001"}},{"mapZone":{"_other":"Lord_Howe","_type":"Australia/Lord_Howe","_territory":"001"}},{"mapZone":{"_other":"Macau","_type":"Asia/Macau","_territory":"001"}},{"mapZone":{"_other":"Macquarie","_type":"Antarctica/Macquarie","_territory":"001"}},{"mapZone":{"_other":"Magadan","_type":"Asia/Magadan","_territory":"001"}},{"mapZone":{"_other":"Malaya","_type":"Asia/Kuala_Lumpur","_territory":"001"}},{"mapZone":{"_other":"Malaysia","_type":"Asia/Kuching","_territory":"001"}},{"mapZone":{"_other":"Maldives","_type":"Indian/Maldives","_territory":"001"}},{"mapZone":{"_other":"Marquesas","_type":"Pacific/Marquesas","_territory":"001"}},{"mapZone":{"_other":"Marshall_Islands","_type":"Pacific/Majuro","_territory":"001"}},{"mapZone":{"_other":"Mauritius","_type":"Indian/Mauritius","_territory":"001"}},{"mapZone":{"_other":"Mawson","_type":"Antarctica/Mawson","_territory":"001"}},{"mapZone":{"_other":"Mexico_Northwest","_type":"America/Santa_Isabel","_territory":"001"}},{"mapZone":{"_other":"Mexico_Pacific","_type":"America/Mazatlan","_territory":"001"}},{"mapZone":{"_other":"Mongolia","_type":"Asia/Ulaanbaatar","_territory":"001"}},{"mapZone":{"_other":"Moscow","_type":"Europe/Moscow","_territory":"001"}},{"mapZone":{"_other":"Myanmar","_type":"Asia/Rangoon","_territory":"001"}},{"mapZone":{"_other":"Nauru","_type":"Pacific/Nauru","_territory":"001"}},{"mapZone":{"_other":"Nepal","_type":"Asia/Katmandu","_territory":"001"}},{"mapZone":{"_other":"New_Caledonia","_type":"Pacific/Noumea","_territory":"001"}},{"mapZone":{"_other":"New_Zealand","_type":"Pacific/Auckland","_territory":"001"}},{"mapZone":{"_other":"New_Zealand","_type":"Antarctica/McMurdo","_territory":"AQ"}},{"mapZone":{"_other":"Newfoundland","_type":"America/St_Johns","_territory":"001"}},{"mapZone":{"_other":"Niue","_type":"Pacific/Niue","_territory":"001"}},{"mapZone":{"_other":"Norfolk","_type":"Pacific/Norfolk","_territory":"001"}},{"mapZone":{"_other":"Noronha","_type":"America/Noronha","_territory":"001"}},{"mapZone":{"_other":"North_Mariana","_type":"Pacific/Saipan","_territory":"001"}},{"mapZone":{"_other":"Novosibirsk","_type":"Asia/Novosibirsk","_territory":"001"}},{"mapZone":{"_other":"Omsk","_type":"Asia/Omsk","_territory":"001"}},{"mapZone":{"_other":"Oral","_type":"Asia/Oral","_territory":"001"}},{"mapZone":{"_other":"Pakistan","_type":"Asia/Karachi","_territory":"001"}},{"mapZone":{"_other":"Palau","_type":"Pacific/Palau","_territory":"001"}},{"mapZone":{"_other":"Papua_New_Guinea","_type":"Pacific/Port_Moresby","_territory":"001"}},{"mapZone":{"_other":"Paraguay","_type":"America/Asuncion","_territory":"001"}},{"mapZone":{"_other":"Peru","_type":"America/Lima","_territory":"001"}},{"mapZone":{"_other":"Philippines","_type":"Asia/Manila","_territory":"001"}},{"mapZone":{"_other":"Phoenix_Islands","_type":"Pacific/Enderbury","_territory":"001"}},{"mapZone":{"_other":"Pierre_Miquelon","_type":"America/Miquelon","_territory":"001"}},{"mapZone":{"_other":"Pitcairn","_type":"Pacific/Pitcairn","_territory":"001"}},{"mapZone":{"_other":"Ponape","_type":"Pacific/Ponape","_territory":"001"}},{"mapZone":{"_other":"Pyongyang","_type":"Asia/Pyongyang","_territory":"001"}},{"mapZone":{"_other":"Qyzylorda","_type":"Asia/Qyzylorda","_territory":"001"}},{"mapZone":{"_other":"Reunion","_type":"Indian/Reunion","_territory":"001"}},{"mapZone":{"_other":"Rothera","_type":"Antarctica/Rothera","_territory":"001"}},{"mapZone":{"_other":"Sakhalin","_type":"Asia/Sakhalin","_territory":"001"}},{"mapZone":{"_other":"Samara","_type":"Europe/Samara","_territory":"001"}},{"mapZone":{"_other":"Samarkand","_type":"Asia/Samarkand","_territory":"001"}},{"mapZone":{"_other":"Samoa","_type":"Pacific/Pago_Pago","_territory":"001"}},{"mapZone":{"_other":"Seychelles","_type":"Indian/Mahe","_territory":"001"}},{"mapZone":{"_other":"Shevchenko","_type":"Asia/Aqtau","_territory":"001"}},{"mapZone":{"_other":"Singapore","_type":"Asia/Singapore","_territory":"001"}},{"mapZone":{"_other":"Solomon","_type":"Pacific/Guadalcanal","_territory":"001"}},{"mapZone":{"_other":"South_Georgia","_type":"Atlantic/South_Georgia","_territory":"001"}},{"mapZone":{"_other":"Suriname","_type":"America/Paramaribo","_territory":"001"}},{"mapZone":{"_other":"Sverdlovsk","_type":"Asia/Yekaterinburg","_territory":"001"}},{"mapZone":{"_other":"Syowa","_type":"Antarctica/Syowa","_territory":"001"}},{"mapZone":{"_other":"Tahiti","_type":"Pacific/Tahiti","_territory":"001"}},{"mapZone":{"_other":"Taipei","_type":"Asia/Taipei","_territory":"001"}},{"mapZone":{"_other":"Tajikistan","_type":"Asia/Dushanbe","_territory":"001"}},{"mapZone":{"_other":"Tashkent","_type":"Asia/Tashkent","_territory":"001"}},{"mapZone":{"_other":"Tbilisi","_type":"Asia/Tbilisi","_territory":"001"}},{"mapZone":{"_other":"Tokelau","_type":"Pacific/Fakaofo","_territory":"001"}},{"mapZone":{"_other":"Tonga","_type":"Pacific/Tongatapu","_territory":"001"}},{"mapZone":{"_other":"Truk","_type":"Pacific/Truk","_territory":"001"}},{"mapZone":{"_other":"Turkey","_type":"Europe/Istanbul","_territory":"001"}},{"mapZone":{"_other":"Turkmenistan","_type":"Asia/Ashgabat","_territory":"001"}},{"mapZone":{"_other":"Tuvalu","_type":"Pacific/Funafuti","_territory":"001"}},{"mapZone":{"_other":"Uralsk","_type":"Asia/Oral","_territory":"001"}},{"mapZone":{"_other":"Uruguay","_type":"America/Montevideo","_territory":"001"}},{"mapZone":{"_other":"Urumqi","_type":"Asia/Urumqi","_territory":"001"}},{"mapZone":{"_other":"Uzbekistan","_type":"Asia/Tashkent","_territory":"001"}},{"mapZone":{"_other":"Vanuatu","_type":"Pacific/Efate","_territory":"001"}},{"mapZone":{"_other":"Venezuela","_type":"America/Caracas","_territory":"001"}},{"mapZone":{"_other":"Vladivostok","_type":"Asia/Vladivostok","_territory":"001"}},{"mapZone":{"_other":"Volgograd","_type":"Europe/Volgograd","_territory":"001"}},{"mapZone":{"_other":"Vostok","_type":"Antarctica/Vostok","_territory":"001"}},{"mapZone":{"_other":"Wake","_type":"Pacific/Wake","_territory":"001"}},{"mapZone":{"_other":"Wallis","_type":"Pacific/Wallis","_territory":"001"}},{"mapZone":{"_other":"Yakutsk","_type":"Asia/Yakutsk","_territory":"001"}},{"mapZone":{"_other":"Yekaterinburg","_type":"Asia/Yekaterinburg","_territory":"001"}},{"mapZone":{"_other":"Yerevan","_type":"Asia/Yerevan","_territory":"001"}},{"mapZone":{"_other":"Yukon","_type":"America/Yakutat","_territory":"001"}}]}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/weekData.json": -/*!***********************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/weekData.json ***! - \***********************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13744 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"weekData":{"minDays":{"001":"1","AD":"4","AN":"4","AT":"4","AX":"4","BE":"4","BG":"4","CH":"4","CZ":"4","DE":"4","DK":"4","EE":"4","ES":"4","FI":"4","FJ":"4","FO":"4","FR":"4","GB":"4","GF":"4","GG":"4","GI":"4","GP":"4","GR":"4","GU":"1","HU":"4","IE":"4","IM":"4","IS":"4","IT":"4","JE":"4","LI":"4","LT":"4","LU":"4","MC":"4","MQ":"4","NL":"4","NO":"4","PL":"4","PT":"4","RE":"4","RU":"4","SE":"4","SJ":"4","SK":"4","SM":"4","UM":"1","US":"1","VA":"4","VI":"1"},"firstDay":{"001":"mon","AD":"mon","AE":"sat","AF":"sat","AG":"sun","AI":"mon","AL":"mon","AM":"mon","AN":"mon","AR":"sun","AS":"sun","AT":"mon","AU":"sun","AX":"mon","AZ":"mon","BA":"mon","BD":"fri","BE":"mon","BG":"mon","BH":"sat","BM":"mon","BN":"mon","BR":"sun","BS":"sun","BT":"sun","BW":"sun","BY":"mon","BZ":"sun","CA":"sun","CH":"mon","CL":"mon","CM":"mon","CN":"sun","CO":"sun","CR":"mon","CY":"mon","CZ":"mon","DE":"mon","DJ":"sat","DK":"mon","DM":"sun","DO":"sun","DZ":"sat","EC":"mon","EE":"mon","EG":"sat","ES":"mon","ET":"sun","FI":"mon","FJ":"mon","FO":"mon","FR":"mon","GB":"mon","GB-alt-variant":"sun","GE":"mon","GF":"mon","GP":"mon","GR":"mon","GT":"sun","GU":"sun","HK":"sun","HN":"sun","HR":"mon","HU":"mon","ID":"sun","IE":"sun","IL":"sun","IN":"sun","IQ":"sat","IR":"sat","IS":"mon","IT":"mon","JM":"sun","JO":"sat","JP":"sun","KE":"sun","KG":"mon","KH":"sun","KR":"sun","KW":"sat","KZ":"mon","LA":"sun","LB":"mon","LI":"mon","LK":"mon","LT":"mon","LU":"mon","LV":"mon","LY":"sat","MA":"sat","MC":"mon","MD":"mon","ME":"mon","MH":"sun","MK":"mon","MM":"sun","MN":"mon","MO":"sun","MQ":"mon","MT":"sun","MV":"fri","MX":"sun","MY":"mon","MZ":"sun","NI":"sun","NL":"mon","NO":"mon","NP":"sun","NZ":"mon","OM":"sat","PA":"sun","PE":"sun","PH":"sun","PK":"sun","PL":"mon","PR":"sun","PT":"mon","PY":"sun","QA":"sat","RE":"mon","RO":"mon","RS":"mon","RU":"mon","SA":"sun","SD":"sat","SE":"mon","SG":"sun","SI":"mon","SK":"mon","SM":"mon","SV":"sun","SY":"sat","TH":"sun","TJ":"mon","TM":"mon","TN":"sun","TR":"mon","TT":"sun","TW":"sun","UA":"mon","UM":"sun","US":"sun","UY":"mon","UZ":"mon","VA":"mon","VE":"sun","VI":"sun","VN":"mon","WS":"sun","XK":"mon","YE":"sun","ZA":"sun","ZW":"sun"},"weekendStart":{"001":"sat","AE":"fri","AF":"thu","BH":"fri","DZ":"fri","EG":"fri","IL":"fri","IN":"sun","IQ":"fri","IR":"fri","JO":"fri","KW":"fri","LY":"fri","MA":"fri","OM":"fri","QA":"fri","SA":"fri","SD":"fri","SY":"fri","TN":"fri","YE":"fri"},"weekendEnd":{"001":"sun","AE":"sat","AF":"fri","BH":"sat","DZ":"sat","EG":"sat","IL":"sat","IQ":"sat","IR":"fri","JO":"sat","KW":"sat","LY":"sat","MA":"sat","OM":"sat","QA":"sat","SA":"sat","SD":"sat","SY":"sat","TN":"sat","YE":"sat"},"af":{"_ordering":"weekOfDate weekOfInterval weekOfMonth"},"am az bs cs cy da el et hi ky lt mk sk ta th":{"_ordering":"weekOfYear weekOfMonth"},"ar fil gu hu hy id kk ko":{"_ordering":"weekOfMonth"},"be ro ru":{"_ordering":"weekOfInterval weekOfMonth"},"bg de iw pt ur zh":{"_ordering":"weekOfDate weekOfMonth weekOfInterval"},"ca es fr gl":{"_ordering":"weekOfDate"},"en bn ja ka":{"_ordering":"weekOfDate weekOfMonth"},"eu":{"_ordering":"weekOfMonth weekOfDate"},"fa hr it lv pl si sr uk uz":{"_ordering":"weekOfMonth weekOfInterval"},"fi zh-TW":{"_ordering":"weekOfYear weekOfDate weekOfMonth"},"is mn no sv vi":{"_ordering":"weekOfYear weekOfMonth weekOfInterval"},"km mr":{"_ordering":"weekOfMonth weekOfYear"},"kn ml pa":{"_ordering":"weekOfMonth weekOfDate weekOfYear"},"lo sq":{"_ordering":"weekOfMonth weekOfInterval weekOfDate weekOfYear"},"ms tr":{"_ordering":"weekOfMonth weekOfYear weekOfInterval weekOfDate"},"nl":{"_ordering":"weekOfDate weekOfYear weekOfMonth"},"sl":{"_ordering":"weekOfInterval"},"sw te":{"_ordering":"weekOfMonth weekOfInterval weekOfYear"},"und":{"_ordering":"weekOfYear"},"zu":{"_ordering":"weekOfYear weekOfInterval"}}}}; - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr.js": -/*!******************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr.js ***! - \******************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( root, factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : - __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}( this, function() { - - - var arrayIsArray = Array.isArray || function( obj ) { - return Object.prototype.toString.call( obj ) === "[object Array]"; - }; - - - - - var pathNormalize = function( path, attributes ) { - if ( arrayIsArray( path ) ) { - path = path.join( "/" ); - } - if ( typeof path !== "string" ) { - throw new Error( "invalid path \"" + path + "\"" ); - } - // 1: Ignore leading slash `/` - // 2: Ignore leading `cldr/` - path = path - .replace( /^\// , "" ) /* 1 */ - .replace( /^cldr\// , "" ); /* 2 */ - - // Replace {attribute}'s - path = path.replace( /{[a-zA-Z]+}/g, function( name ) { - name = name.replace( /^{([^}]*)}$/, "$1" ); - return attributes[ name ]; - }); - - return path.split( "/" ); - }; - - - - - var arraySome = function( array, callback ) { - var i, length; - if ( array.some ) { - return array.some( callback ); - } - for ( i = 0, length = array.length; i < length; i++ ) { - if ( callback( array[ i ], i, array ) ) { - return true; - } - } - return false; - }; - - - - - /** - * Return the maximized language id as defined in - * http://www.unicode.org/reports/tr35/#Likely_Subtags - * 1. Canonicalize. - * 1.1 Make sure the input locale is in canonical form: uses the right - * separator, and has the right casing. - * TODO Right casing? What df? It seems languages are lowercase, scripts are - * Capitalized, territory is uppercase. I am leaving this as an exercise to - * the user. - * - * 1.2 Replace any deprecated subtags with their canonical values using the - * data in supplemental metadata. Use the first value in the - * replacement list, if it exists. Language tag replacements may have multiple - * parts, such as "sh" ➞ "sr_Latn" or mo" ➞ "ro_MD". In such a case, the - * original script and/or region are retained if there is one. Thus - * "sh_Arab_AQ" ➞ "sr_Arab_AQ", not "sr_Latn_AQ". - * TODO What data? - * - * 1.3 If the tag is grandfathered (see in the supplemental data), then return it. - * TODO grandfathered? - * - * 1.4 Remove the script code 'Zzzz' and the region code 'ZZ' if they occur. - * 1.5 Get the components of the cleaned-up source tag (languages, scripts, - * and regions), plus any variants and extensions. - * 2. Lookup. Lookup each of the following in order, and stop on the first - * match: - * 2.1 languages_scripts_regions - * 2.2 languages_regions - * 2.3 languages_scripts - * 2.4 languages - * 2.5 und_scripts - * 3. Return - * 3.1 If there is no match, either return an error value, or the match for - * "und" (in APIs where a valid language tag is required). - * 3.2 Otherwise there is a match = languagem_scriptm_regionm - * 3.3 Let xr = xs if xs is not empty, and xm otherwise. - * 3.4 Return the language tag composed of languager _ scriptr _ regionr + - * variants + extensions. - * - * @subtags [Array] normalized language id subtags tuple (see init.js). - */ - var coreLikelySubtags = function( Cldr, cldr, subtags, options ) { - var match, matchFound, - language = subtags[ 0 ], - script = subtags[ 1 ], - sep = Cldr.localeSep, - territory = subtags[ 2 ], - variants = subtags.slice( 3, 4 ); - options = options || {}; - - // Skip if (language, script, territory) is not empty [3.3] - if ( language !== "und" && script !== "Zzzz" && territory !== "ZZ" ) { - return [ language, script, territory ].concat( variants ); - } - - // Skip if no supplemental likelySubtags data is present - if ( typeof cldr.get( "supplemental/likelySubtags" ) === "undefined" ) { - return; - } - - // [2] - matchFound = arraySome([ - [ language, script, territory ], - [ language, territory ], - [ language, script ], - [ language ], - [ "und", script ] - ], function( test ) { - return match = !(/\b(Zzzz|ZZ)\b/).test( test.join( sep ) ) /* [1.4] */ && cldr.get( [ "supplemental/likelySubtags", test.join( sep ) ] ); - }); - - // [3] - if ( matchFound ) { - // [3.2 .. 3.4] - match = match.split( sep ); - return [ - language !== "und" ? language : match[ 0 ], - script !== "Zzzz" ? script : match[ 1 ], - territory !== "ZZ" ? territory : match[ 2 ] - ].concat( variants ); - } else if ( options.force ) { - // [3.1.2] - return cldr.get( "supplemental/likelySubtags/und" ).split( sep ); - } else { - // [3.1.1] - return; - } - }; - - - - /** - * Given a locale, remove any fields that Add Likely Subtags would add. - * http://www.unicode.org/reports/tr35/#Likely_Subtags - * 1. First get max = AddLikelySubtags(inputLocale). If an error is signaled, - * return it. - * 2. Remove the variants from max. - * 3. Then for trial in {language, language _ region, language _ script}. If - * AddLikelySubtags(trial) = max, then return trial + variants. - * 4. If you do not get a match, return max + variants. - * - * @maxLanguageId [Array] maxLanguageId tuple (see init.js). - */ - var coreRemoveLikelySubtags = function( Cldr, cldr, maxLanguageId ) { - var match, matchFound, - language = maxLanguageId[ 0 ], - script = maxLanguageId[ 1 ], - territory = maxLanguageId[ 2 ], - variants = maxLanguageId[ 3 ]; - - // [3] - matchFound = arraySome([ - [ [ language, "Zzzz", "ZZ" ], [ language ] ], - [ [ language, "Zzzz", territory ], [ language, territory ] ], - [ [ language, script, "ZZ" ], [ language, script ] ] - ], function( test ) { - var result = coreLikelySubtags( Cldr, cldr, test[ 0 ] ); - match = test[ 1 ]; - return result && result[ 0 ] === maxLanguageId[ 0 ] && - result[ 1 ] === maxLanguageId[ 1 ] && - result[ 2 ] === maxLanguageId[ 2 ]; - }); - - if ( matchFound ) { - if ( variants ) { - match.push( variants ); - } - return match; - } - - // [4] - return maxLanguageId; - }; - - - - - /** - * subtags( locale ) - * - * @locale [String] - */ - var coreSubtags = function( locale ) { - var aux, unicodeLanguageId, - subtags = []; - - locale = locale.replace( /_/, "-" ); - - // Unicode locale extensions. - aux = locale.split( "-u-" ); - if ( aux[ 1 ] ) { - aux[ 1 ] = aux[ 1 ].split( "-t-" ); - locale = aux[ 0 ] + ( aux[ 1 ][ 1 ] ? "-t-" + aux[ 1 ][ 1 ] : ""); - subtags[ 4 /* unicodeLocaleExtensions */ ] = aux[ 1 ][ 0 ]; - } - - // TODO normalize transformed extensions. Currently, skipped. - // subtags[ x ] = locale.split( "-t-" )[ 1 ]; - unicodeLanguageId = locale.split( "-t-" )[ 0 ]; - - // unicode_language_id = "root" - // | unicode_language_subtag - // (sep unicode_script_subtag)? - // (sep unicode_region_subtag)? - // (sep unicode_variant_subtag)* ; - // - // Although unicode_language_subtag = alpha{2,8}, I'm using alpha{2,3}. Because, there's no language on CLDR lengthier than 3. - aux = unicodeLanguageId.match( /^(([a-z]{2,3})(-([A-Z][a-z]{3}))?(-([A-Z]{2}|[0-9]{3}))?)((-([a-zA-Z0-9]{5,8}|[0-9][a-zA-Z0-9]{3}))*)$|^(root)$/ ); - if ( aux === null ) { - return [ "und", "Zzzz", "ZZ" ]; - } - subtags[ 0 /* language */ ] = aux[ 10 ] /* root */ || aux[ 2 ] || "und"; - subtags[ 1 /* script */ ] = aux[ 4 ] || "Zzzz"; - subtags[ 2 /* territory */ ] = aux[ 6 ] || "ZZ"; - if ( aux[ 7 ] && aux[ 7 ].length ) { - subtags[ 3 /* variant */ ] = aux[ 7 ].slice( 1 ) /* remove leading "-" */; - } - - // 0: language - // 1: script - // 2: territory (aka region) - // 3: variant - // 4: unicodeLocaleExtensions - return subtags; - }; - - - - - var arrayForEach = function( array, callback ) { - var i, length; - if ( array.forEach ) { - return array.forEach( callback ); - } - for ( i = 0, length = array.length; i < length; i++ ) { - callback( array[ i ], i, array ); - } - }; - - - - - /** - * bundleLookup( minLanguageId ) - * - * @Cldr [Cldr class] - * - * @cldr [Cldr instance] - * - * @minLanguageId [String] requested languageId after applied remove likely subtags. - */ - var bundleLookup = function( Cldr, cldr, minLanguageId ) { - var availableBundleMap = Cldr._availableBundleMap, - availableBundleMapQueue = Cldr._availableBundleMapQueue; - - if ( availableBundleMapQueue.length ) { - arrayForEach( availableBundleMapQueue, function( bundle ) { - var existing, maxBundle, minBundle, subtags; - subtags = coreSubtags( bundle ); - maxBundle = coreLikelySubtags( Cldr, cldr, subtags ); - minBundle = coreRemoveLikelySubtags( Cldr, cldr, maxBundle ); - minBundle = minBundle.join( Cldr.localeSep ); - existing = availableBundleMapQueue[ minBundle ]; - if ( existing && existing.length < bundle.length ) { - return; - } - availableBundleMap[ minBundle ] = bundle; - }); - Cldr._availableBundleMapQueue = []; - } - - return availableBundleMap[ minLanguageId ] || null; - }; - - - - - var objectKeys = function( object ) { - var i, - result = []; - - if ( Object.keys ) { - return Object.keys( object ); - } - - for ( i in object ) { - result.push( i ); - } - - return result; - }; - - - - - var createError = function( code, attributes ) { - var error, message; - - message = code + ( attributes && JSON ? ": " + JSON.stringify( attributes ) : "" ); - error = new Error( message ); - error.code = code; - - // extend( error, attributes ); - arrayForEach( objectKeys( attributes ), function( attribute ) { - error[ attribute ] = attributes[ attribute ]; - }); - - return error; - }; - - - - - var validate = function( code, check, attributes ) { - if ( !check ) { - throw createError( code, attributes ); - } - }; - - - - - var validatePresence = function( value, name ) { - validate( "E_MISSING_PARAMETER", typeof value !== "undefined", { - name: name - }); - }; - - - - - var validateType = function( value, name, check, expected ) { - validate( "E_INVALID_PAR_TYPE", check, { - expected: expected, - name: name, - value: value - }); - }; - - - - - var validateTypePath = function( value, name ) { - validateType( value, name, typeof value === "string" || arrayIsArray( value ), "String or Array" ); - }; - - - - - /** - * Function inspired by jQuery Core, but reduced to our use case. - */ - var isPlainObject = function( obj ) { - return obj !== null && "" + obj === "[object Object]"; - }; - - - - - var validateTypePlainObject = function( value, name ) { - validateType( value, name, typeof value === "undefined" || isPlainObject( value ), "Plain Object" ); - }; - - - - - var validateTypeString = function( value, name ) { - validateType( value, name, typeof value === "string", "a string" ); - }; - - - - - // @path: normalized path - var resourceGet = function( data, path ) { - var i, - node = data, - length = path.length; - - for ( i = 0; i < length - 1; i++ ) { - node = node[ path[ i ] ]; - if ( !node ) { - return undefined; - } - } - return node[ path[ i ] ]; - }; - - - - - /** - * setAvailableBundles( Cldr, json ) - * - * @Cldr [Cldr class] - * - * @json resolved/unresolved cldr data. - * - * Set available bundles queue based on passed json CLDR data. Considers a bundle as any String at /main/{bundle}. - */ - var coreSetAvailableBundles = function( Cldr, json ) { - var bundle, - availableBundleMapQueue = Cldr._availableBundleMapQueue, - main = resourceGet( json, [ "main" ] ); - - if ( main ) { - for ( bundle in main ) { - if ( main.hasOwnProperty( bundle ) && bundle !== "root" && - availableBundleMapQueue.indexOf( bundle ) === -1 ) { - availableBundleMapQueue.push( bundle ); - } - } - } - }; - - - - var alwaysArray = function( somethingOrArray ) { - return arrayIsArray( somethingOrArray ) ? somethingOrArray : [ somethingOrArray ]; - }; - - - var jsonMerge = (function() { - - // Returns new deeply merged JSON. - // - // Eg. - // merge( { a: { b: 1, c: 2 } }, { a: { b: 3, d: 4 } } ) - // -> { a: { b: 3, c: 2, d: 4 } } - // - // @arguments JSON's - // - var merge = function() { - var destination = {}, - sources = [].slice.call( arguments, 0 ); - arrayForEach( sources, function( source ) { - var prop; - for ( prop in source ) { - if ( prop in destination && typeof destination[ prop ] === "object" && !arrayIsArray( destination[ prop ] ) ) { - - // Merge Objects - destination[ prop ] = merge( destination[ prop ], source[ prop ] ); - - } else { - - // Set new values - destination[ prop ] = source[ prop ]; - - } - } - }); - return destination; - }; - - return merge; - -}()); - - - /** - * load( Cldr, source, jsons ) - * - * @Cldr [Cldr class] - * - * @source [Object] - * - * @jsons [arguments] - */ - var coreLoad = function( Cldr, source, jsons ) { - var i, j, json; - - validatePresence( jsons[ 0 ], "json" ); - - // Support arbitrary parameters, e.g., `Cldr.load({...}, {...})`. - for ( i = 0; i < jsons.length; i++ ) { - - // Support array parameters, e.g., `Cldr.load([{...}, {...}])`. - json = alwaysArray( jsons[ i ] ); - - for ( j = 0; j < json.length; j++ ) { - validateTypePlainObject( json[ j ], "json" ); - source = jsonMerge( source, json[ j ] ); - coreSetAvailableBundles( Cldr, json[ j ] ); - } - } - - return source; - }; - - - - var itemGetResolved = function( Cldr, path, attributes ) { - // Resolve path - var normalizedPath = pathNormalize( path, attributes ); - - return resourceGet( Cldr._resolved, normalizedPath ); - }; - - - - - /** - * new Cldr() - */ - var Cldr = function( locale ) { - this.init( locale ); - }; - - // Build optimization hack to avoid duplicating functions across modules. - Cldr._alwaysArray = alwaysArray; - Cldr._coreLoad = coreLoad; - Cldr._createError = createError; - Cldr._itemGetResolved = itemGetResolved; - Cldr._jsonMerge = jsonMerge; - Cldr._pathNormalize = pathNormalize; - Cldr._resourceGet = resourceGet; - Cldr._validatePresence = validatePresence; - Cldr._validateType = validateType; - Cldr._validateTypePath = validateTypePath; - Cldr._validateTypePlainObject = validateTypePlainObject; - - Cldr._availableBundleMap = {}; - Cldr._availableBundleMapQueue = []; - Cldr._resolved = {}; - - // Allow user to override locale separator "-" (default) | "_". According to http://www.unicode.org/reports/tr35/#Unicode_language_identifier, both "-" and "_" are valid locale separators (eg. "en_GB", "en-GB"). According to http://unicode.org/cldr/trac/ticket/6786 its usage must be consistent throughout the data set. - Cldr.localeSep = "-"; - - /** - * Cldr.load( json [, json, ...] ) - * - * @json [JSON] CLDR data or [Array] Array of @json's. - * - * Load resolved cldr data. - */ - Cldr.load = function() { - Cldr._resolved = coreLoad( Cldr, Cldr._resolved, arguments ); - }; - - /** - * .init() automatically run on instantiation/construction. - */ - Cldr.prototype.init = function( locale ) { - var attributes, language, maxLanguageId, minLanguageId, script, subtags, territory, unicodeLocaleExtensions, variant, - sep = Cldr.localeSep, - unicodeLocaleExtensionsRaw = ""; - - validatePresence( locale, "locale" ); - validateTypeString( locale, "locale" ); - - subtags = coreSubtags( locale ); - - if ( subtags.length === 5 ) { - unicodeLocaleExtensions = subtags.pop(); - unicodeLocaleExtensionsRaw = sep + "u" + sep + unicodeLocaleExtensions; - // Remove trailing null when there is unicodeLocaleExtensions but no variants. - if ( !subtags[ 3 ] ) { - subtags.pop(); - } - } - variant = subtags[ 3 ]; - - // Normalize locale code. - // Get (or deduce) the "triple subtags": language, territory (also aliased as region), and script subtags. - // Get the variant subtags (calendar, collation, currency, etc). - // refs: - // - http://www.unicode.org/reports/tr35/#Field_Definitions - // - http://www.unicode.org/reports/tr35/#Language_and_Locale_IDs - // - http://www.unicode.org/reports/tr35/#Unicode_locale_identifier - - // When a locale id does not specify a language, or territory (region), or script, they are obtained by Likely Subtags. - maxLanguageId = coreLikelySubtags( Cldr, this, subtags, { force: true } ) || subtags; - language = maxLanguageId[ 0 ]; - script = maxLanguageId[ 1 ]; - territory = maxLanguageId[ 2 ]; - - minLanguageId = coreRemoveLikelySubtags( Cldr, this, maxLanguageId ).join( sep ); - - // Set attributes - this.attributes = attributes = { - bundle: bundleLookup( Cldr, this, minLanguageId ), - - // Unicode Language Id - minLanguageId: minLanguageId + unicodeLocaleExtensionsRaw, - maxLanguageId: maxLanguageId.join( sep ) + unicodeLocaleExtensionsRaw, - - // Unicode Language Id Subtabs - language: language, - script: script, - territory: territory, - region: territory, /* alias */ - variant: variant - }; - - // Unicode locale extensions. - unicodeLocaleExtensions && ( "-" + unicodeLocaleExtensions ).replace( /-[a-z]{3,8}|(-[a-z]{2})-([a-z]{3,8})/g, function( attribute, key, type ) { - - if ( key ) { - - // Extension is in the `keyword` form. - attributes[ "u" + key ] = type; - } else { - - // Extension is in the `attribute` form. - attributes[ "u" + attribute ] = true; - } - }); - - this.locale = locale; - }; - - /** - * .get() - */ - Cldr.prototype.get = function( path ) { - - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - return itemGetResolved( Cldr, path, this.attributes ); - }; - - /** - * .main() - */ - Cldr.prototype.main = function( path ) { - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - validate( "E_MISSING_BUNDLE", this.attributes.bundle !== null, { - locale: this.locale - }); - - path = alwaysArray( path ); - return this.get( [ "main/{bundle}" ].concat( path ) ); - }; - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/event.js": -/*!************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/event.js ***! - \************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var pathNormalize = Cldr._pathNormalize, - validatePresence = Cldr._validatePresence, - validateType = Cldr._validateType; - -/*! - * EventEmitter v4.2.7 - git.io/ee - * Oliver Caldwell - * MIT license - * @preserve - */ - -var EventEmitter; -/* jshint ignore:start */ -EventEmitter = (function () { - - - /** - * Class for managing events. - * Can be extended to provide event functionality in other classes. - * - * @class EventEmitter Manages event registering and emitting. - */ - function EventEmitter() {} - - // Shortcuts to improve speed and size - var proto = EventEmitter.prototype; - var exports = {}; - - - /** - * Finds the index of the listener for the event in it's storage array. - * - * @param {Function[]} listeners Array of listeners to search through. - * @param {Function} listener Method to look for. - * @return {Number} Index of the specified listener, -1 if not found - * @api private - */ - function indexOfListener(listeners, listener) { - var i = listeners.length; - while (i--) { - if (listeners[i].listener === listener) { - return i; - } - } - - return -1; - } - - /** - * Alias a method while keeping the context correct, to allow for overwriting of target method. - * - * @param {String} name The name of the target method. - * @return {Function} The aliased method - * @api private - */ - function alias(name) { - return function aliasClosure() { - return this[name].apply(this, arguments); - }; - } - - /** - * Returns the listener array for the specified event. - * Will initialise the event object and listener arrays if required. - * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them. - * Each property in the object response is an array of listener functions. - * - * @param {String|RegExp} evt Name of the event to return the listeners from. - * @return {Function[]|Object} All listener functions for the event. - */ - proto.getListeners = function getListeners(evt) { - var events = this._getEvents(); - var response; - var key; - - // Return a concatenated array of all matching events if - // the selector is a regular expression. - if (evt instanceof RegExp) { - response = {}; - for (key in events) { - if (events.hasOwnProperty(key) && evt.test(key)) { - response[key] = events[key]; - } - } - } - else { - response = events[evt] || (events[evt] = []); - } - - return response; - }; - - /** - * Takes a list of listener objects and flattens it into a list of listener functions. - * - * @param {Object[]} listeners Raw listener objects. - * @return {Function[]} Just the listener functions. - */ - proto.flattenListeners = function flattenListeners(listeners) { - var flatListeners = []; - var i; - - for (i = 0; i < listeners.length; i += 1) { - flatListeners.push(listeners[i].listener); - } - - return flatListeners; - }; - - /** - * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful. - * - * @param {String|RegExp} evt Name of the event to return the listeners from. - * @return {Object} All listener functions for an event in an object. - */ - proto.getListenersAsObject = function getListenersAsObject(evt) { - var listeners = this.getListeners(evt); - var response; - - if (listeners instanceof Array) { - response = {}; - response[evt] = listeners; - } - - return response || listeners; - }; - - /** - * Adds a listener function to the specified event. - * The listener will not be added if it is a duplicate. - * If the listener returns true then it will be removed after it is called. - * If you pass a regular expression as the event name then the listener will be added to all events that match it. - * - * @param {String|RegExp} evt Name of the event to attach the listener to. - * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addListener = function addListener(evt, listener) { - var listeners = this.getListenersAsObject(evt); - var listenerIsWrapped = typeof listener === 'object'; - var key; - - for (key in listeners) { - if (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) { - listeners[key].push(listenerIsWrapped ? listener : { - listener: listener, - once: false - }); - } - } - - return this; - }; - - /** - * Alias of addListener - */ - proto.on = alias('addListener'); - - /** - * Semi-alias of addListener. It will add a listener that will be - * automatically removed after it's first execution. - * - * @param {String|RegExp} evt Name of the event to attach the listener to. - * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addOnceListener = function addOnceListener(evt, listener) { - return this.addListener(evt, { - listener: listener, - once: true - }); - }; - - /** - * Alias of addOnceListener. - */ - proto.once = alias('addOnceListener'); - - /** - * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad. - * You need to tell it what event names should be matched by a regex. - * - * @param {String} evt Name of the event to create. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.defineEvent = function defineEvent(evt) { - this.getListeners(evt); - return this; - }; - - /** - * Uses defineEvent to define multiple events. - * - * @param {String[]} evts An array of event names to define. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.defineEvents = function defineEvents(evts) { - for (var i = 0; i < evts.length; i += 1) { - this.defineEvent(evts[i]); - } - return this; - }; - - /** - * Removes a listener function from the specified event. - * When passed a regular expression as the event name, it will remove the listener from all events that match it. - * - * @param {String|RegExp} evt Name of the event to remove the listener from. - * @param {Function} listener Method to remove from the event. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeListener = function removeListener(evt, listener) { - var listeners = this.getListenersAsObject(evt); - var index; - var key; - - for (key in listeners) { - if (listeners.hasOwnProperty(key)) { - index = indexOfListener(listeners[key], listener); - - if (index !== -1) { - listeners[key].splice(index, 1); - } - } - } - - return this; - }; - - /** - * Alias of removeListener - */ - proto.off = alias('removeListener'); - - /** - * Adds listeners in bulk using the manipulateListeners method. - * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added. - * You can also pass it a regular expression to add the array of listeners to all events that match it. - * Yeah, this function does quite a bit. That's probably a bad thing. - * - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to add. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addListeners = function addListeners(evt, listeners) { - // Pass through to manipulateListeners - return this.manipulateListeners(false, evt, listeners); - }; - - /** - * Removes listeners in bulk using the manipulateListeners method. - * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. - * You can also pass it an event name and an array of listeners to be removed. - * You can also pass it a regular expression to remove the listeners from all events that match it. - * - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to remove. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeListeners = function removeListeners(evt, listeners) { - // Pass through to manipulateListeners - return this.manipulateListeners(true, evt, listeners); - }; - - /** - * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level. - * The first argument will determine if the listeners are removed (true) or added (false). - * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. - * You can also pass it an event name and an array of listeners to be added/removed. - * You can also pass it a regular expression to manipulate the listeners of all events that match it. - * - * @param {Boolean} remove True if you want to remove listeners, false if you want to add. - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to add/remove. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) { - var i; - var value; - var single = remove ? this.removeListener : this.addListener; - var multiple = remove ? this.removeListeners : this.addListeners; - - // If evt is an object then pass each of it's properties to this method - if (typeof evt === 'object' && !(evt instanceof RegExp)) { - for (i in evt) { - if (evt.hasOwnProperty(i) && (value = evt[i])) { - // Pass the single listener straight through to the singular method - if (typeof value === 'function') { - single.call(this, i, value); - } - else { - // Otherwise pass back to the multiple function - multiple.call(this, i, value); - } - } - } - } - else { - // So evt must be a string - // And listeners must be an array of listeners - // Loop over it and pass each one to the multiple method - i = listeners.length; - while (i--) { - single.call(this, evt, listeners[i]); - } - } - - return this; - }; - - /** - * Removes all listeners from a specified event. - * If you do not specify an event then all listeners will be removed. - * That means every event will be emptied. - * You can also pass a regex to remove all events that match it. - * - * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeEvent = function removeEvent(evt) { - var type = typeof evt; - var events = this._getEvents(); - var key; - - // Remove different things depending on the state of evt - if (type === 'string') { - // Remove all listeners for the specified event - delete events[evt]; - } - else if (evt instanceof RegExp) { - // Remove all events matching the regex. - for (key in events) { - if (events.hasOwnProperty(key) && evt.test(key)) { - delete events[key]; - } - } - } - else { - // Remove all listeners in all events - delete this._events; - } - - return this; - }; - - /** - * Alias of removeEvent. - * - * Added to mirror the node API. - */ - proto.removeAllListeners = alias('removeEvent'); - - /** - * Emits an event of your choice. - * When emitted, every listener attached to that event will be executed. - * If you pass the optional argument array then those arguments will be passed to every listener upon execution. - * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately. - * So they will not arrive within the array on the other side, they will be separate. - * You can also pass a regular expression to emit to all events that match it. - * - * @param {String|RegExp} evt Name of the event to emit and execute listeners for. - * @param {Array} [args] Optional array of arguments to be passed to each listener. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.emitEvent = function emitEvent(evt, args) { - var listeners = this.getListenersAsObject(evt); - var listener; - var i; - var key; - var response; - - for (key in listeners) { - if (listeners.hasOwnProperty(key)) { - i = listeners[key].length; - - while (i--) { - // If the listener returns true then it shall be removed from the event - // The function is executed either with a basic call or an apply if there is an args array - listener = listeners[key][i]; - - if (listener.once === true) { - this.removeListener(evt, listener.listener); - } - - response = listener.listener.apply(this, args || []); - - if (response === this._getOnceReturnValue()) { - this.removeListener(evt, listener.listener); - } - } - } - } - - return this; - }; - - /** - * Alias of emitEvent - */ - proto.trigger = alias('emitEvent'); - - /** - * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on. - * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it. - * - * @param {String|RegExp} evt Name of the event to emit and execute listeners for. - * @param {...*} Optional additional arguments to be passed to each listener. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.emit = function emit(evt) { - var args = Array.prototype.slice.call(arguments, 1); - return this.emitEvent(evt, args); - }; - - /** - * Sets the current value to check against when executing listeners. If a - * listeners return value matches the one set here then it will be removed - * after execution. This value defaults to true. - * - * @param {*} value The new value to check for when executing listeners. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.setOnceReturnValue = function setOnceReturnValue(value) { - this._onceReturnValue = value; - return this; - }; - - /** - * Fetches the current value to check against when executing listeners. If - * the listeners return value matches this one then it should be removed - * automatically. It will return true by default. - * - * @return {*|Boolean} The current value to check for or the default, true. - * @api private - */ - proto._getOnceReturnValue = function _getOnceReturnValue() { - if (this.hasOwnProperty('_onceReturnValue')) { - return this._onceReturnValue; - } - else { - return true; - } - }; - - /** - * Fetches the events object and creates one if required. - * - * @return {Object} The events storage object. - * @api private - */ - proto._getEvents = function _getEvents() { - return this._events || (this._events = {}); - }; - - /** - * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version. - * - * @return {Function} Non conflicting EventEmitter class. - */ - EventEmitter.noConflict = function noConflict() { - exports.EventEmitter = originalGlobalValue; - return EventEmitter; - }; - - return EventEmitter; -}()); -/* jshint ignore:end */ - - - - var validateTypeFunction = function( value, name ) { - validateType( value, name, typeof value === "undefined" || typeof value === "function", "Function" ); - }; - - - - - var superGet, superInit, - globalEe = new EventEmitter(); - - function validateTypeEvent( value, name ) { - validateType( value, name, typeof value === "string" || value instanceof RegExp, "String or RegExp" ); - } - - function validateThenCall( method, self ) { - return function( event, listener ) { - validatePresence( event, "event" ); - validateTypeEvent( event, "event" ); - - validatePresence( listener, "listener" ); - validateTypeFunction( listener, "listener" ); - - return self[ method ].apply( self, arguments ); - }; - } - - function off( self ) { - return validateThenCall( "off", self ); - } - - function on( self ) { - return validateThenCall( "on", self ); - } - - function once( self ) { - return validateThenCall( "once", self ); - } - - Cldr.off = off( globalEe ); - Cldr.on = on( globalEe ); - Cldr.once = once( globalEe ); - - /** - * Overload Cldr.prototype.init(). - */ - superInit = Cldr.prototype.init; - Cldr.prototype.init = function() { - var ee; - this.ee = ee = new EventEmitter(); - this.off = off( ee ); - this.on = on( ee ); - this.once = once( ee ); - superInit.apply( this, arguments ); - }; - - /** - * getOverload is encapsulated, because of cldr/unresolved. If it's loaded - * after cldr/event (and note it overwrites .get), it can trigger this - * overload again. - */ - function getOverload() { - - /** - * Overload Cldr.prototype.get(). - */ - superGet = Cldr.prototype.get; - Cldr.prototype.get = function( path ) { - var value = superGet.apply( this, arguments ); - path = pathNormalize( path, this.attributes ).join( "/" ); - globalEe.trigger( "get", [ path, value ] ); - this.ee.trigger( "get", [ path, value ] ); - return value; - }; - } - - Cldr._eventInit = getOverload; - getOverload(); - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/supplemental.js": -/*!*******************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/supplemental.js ***! - \*******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var alwaysArray = Cldr._alwaysArray; - - - - var supplementalMain = function( cldr ) { - - var prepend, supplemental; - - prepend = function( prepend ) { - return function( path ) { - path = alwaysArray( path ); - return cldr.get( [ prepend ].concat( path ) ); - }; - }; - - supplemental = prepend( "supplemental" ); - - // Week Data - // http://www.unicode.org/reports/tr35/tr35-dates.html#Week_Data - supplemental.weekData = prepend( "supplemental/weekData" ); - - supplemental.weekData.firstDay = function() { - return cldr.get( "supplemental/weekData/firstDay/{territory}" ) || - cldr.get( "supplemental/weekData/firstDay/001" ); - }; - - supplemental.weekData.minDays = function() { - var minDays = cldr.get( "supplemental/weekData/minDays/{territory}" ) || - cldr.get( "supplemental/weekData/minDays/001" ); - return parseInt( minDays, 10 ); - }; - - // Time Data - // http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data - supplemental.timeData = prepend( "supplemental/timeData" ); - - supplemental.timeData.allowed = function() { - return cldr.get( "supplemental/timeData/{territory}/_allowed" ) || - cldr.get( "supplemental/timeData/001/_allowed" ); - }; - - supplemental.timeData.preferred = function() { - return cldr.get( "supplemental/timeData/{territory}/_preferred" ) || - cldr.get( "supplemental/timeData/001/_preferred" ); - }; - - return supplemental; - - }; - - - - - var initSuper = Cldr.prototype.init; - - /** - * .init() automatically ran on construction. - * - * Overload .init(). - */ - Cldr.prototype.init = function() { - initSuper.apply( this, arguments ); - this.supplemental = supplementalMain( this ); - }; - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/unresolved.js": -/*!*****************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/unresolved.js ***! - \*****************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var coreLoad = Cldr._coreLoad; - var jsonMerge = Cldr._jsonMerge; - var pathNormalize = Cldr._pathNormalize; - var resourceGet = Cldr._resourceGet; - var validatePresence = Cldr._validatePresence; - var validateTypePath = Cldr._validateTypePath; - - - - var bundleParentLookup = function( Cldr, locale ) { - var normalizedPath, parent; - - if ( locale === "root" ) { - return; - } - - // First, try to find parent on supplemental data. - normalizedPath = pathNormalize( [ "supplemental/parentLocales/parentLocale", locale ] ); - parent = resourceGet( Cldr._resolved, normalizedPath ) || resourceGet( Cldr._raw, normalizedPath ); - if ( parent ) { - return parent; - } - - // Or truncate locale. - parent = locale.substr( 0, locale.lastIndexOf( Cldr.localeSep ) ); - if ( !parent ) { - return "root"; - } - - return parent; - }; - - - - - // @path: normalized path - var resourceSet = function( data, path, value ) { - var i, - node = data, - length = path.length; - - for ( i = 0; i < length - 1; i++ ) { - if ( !node[ path[ i ] ] ) { - node[ path[ i ] ] = {}; - } - node = node[ path[ i ] ]; - } - node[ path[ i ] ] = value; - }; - - - var itemLookup = (function() { - - var lookup; - - lookup = function( Cldr, locale, path, attributes, childLocale ) { - var normalizedPath, parent, value; - - // 1: Finish recursion - // 2: Avoid infinite loop - if ( typeof locale === "undefined" /* 1 */ || locale === childLocale /* 2 */ ) { - return; - } - - // Resolve path - normalizedPath = pathNormalize( path, attributes ); - - // Check resolved (cached) data first - // 1: Due to #16, never use the cached resolved non-leaf nodes. It may not - // represent its leafs in its entirety. - value = resourceGet( Cldr._resolved, normalizedPath ); - if ( value !== undefined && typeof value !== "object" /* 1 */ ) { - return value; - } - - // Check raw data - value = resourceGet( Cldr._raw, normalizedPath ); - - if ( value === undefined ) { - // Or, lookup at parent locale - parent = bundleParentLookup( Cldr, locale ); - value = lookup( Cldr, parent, path, jsonMerge( attributes, { bundle: parent }), locale ); - } - - if ( value !== undefined ) { - // Set resolved (cached) - resourceSet( Cldr._resolved, normalizedPath, value ); - } - - return value; - }; - - return lookup; - -}()); - - - Cldr._raw = {}; - - /** - * Cldr.load( json [, json, ...] ) - * - * @json [JSON] CLDR data or [Array] Array of @json's. - * - * Load resolved or unresolved cldr data. - * Overwrite Cldr.load(). - */ - Cldr.load = function() { - Cldr._raw = coreLoad( Cldr, Cldr._raw, arguments ); - }; - - /** - * Overwrite Cldr.prototype.get(). - */ - Cldr.prototype.get = function( path ) { - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - // 1: use bundle as locale on item lookup for simplification purposes, because no other extended subtag is used anyway on bundle parent lookup. - // 2: during init(), this method is called, but bundle is yet not defined. Use "" as a workaround in this very specific scenario. - return itemLookup( Cldr, this.attributes && this.attributes.bundle /* 1 */ || "" /* 2 */, path, this.attributes ); - }; - - // In case cldr/unresolved is loaded after cldr/event, we trigger its overloads again. Because, .get is overwritten in here. - if ( Cldr._eventInit ) { - Cldr._eventInit(); - } - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/node_main.js": -/*!***********************************************!*\ - !*** ./node_modules/cldrjs/dist/node_main.js ***! - \***********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ - -// Cldr -module.exports = __webpack_require__( /*! ./cldr */ "./node_modules/cldrjs/dist/cldr.js" ); - -// Extent Cldr with the following modules -__webpack_require__( /*! ./cldr/event */ "./node_modules/cldrjs/dist/cldr/event.js" ); -__webpack_require__( /*! ./cldr/supplemental */ "./node_modules/cldrjs/dist/cldr/supplemental.js" ); -__webpack_require__( /*! ./cldr/unresolved */ "./node_modules/cldrjs/dist/cldr/unresolved.js" ); - - -/***/ }), - -/***/ "./src/Locale.js": -/*!***********************!*\ - !*** ./src/Locale.js ***! - \***********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -exports._init = _init; - -var _CldrDateTimeTextProvider = __webpack_require__(/*! ./format/cldr/CldrDateTimeTextProvider */ "./src/format/cldr/CldrDateTimeTextProvider.js"); - -var _CldrDateTimeTextProvider2 = _interopRequireDefault(_CldrDateTimeTextProvider); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var Locale = function () { - _createClass(Locale, null, [{ - key: 'getAvailableLocales', - value: function getAvailableLocales() { - return new _CldrDateTimeTextProvider2.default().getAvailableLocales(); - } - }]); - - function Locale(language) { - var country = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; - var localeString = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; - - _classCallCheck(this, Locale); - - this._language = language; - this._country = country; - this._localeString = localeString; - } - - _createClass(Locale, [{ - key: 'language', - value: function language() { - return this._language; - } - }, { - key: 'country', - value: function country() { - return this._country; - } - }, { - key: 'localeString', - value: function localeString() { - if (this._localeString.length > 0) { - return this._localeString; - } - if (this._country.length > 0) { - return this._language + '-' + this._country; - } else { - return this._language; - } - } - }, { - key: 'toString', - value: function toString() { - return 'Locale[' + this.localeString() + ']'; - } - }, { - key: 'equals', - value: function equals(other) { - if (!other) { - return false; - } - if (!(other instanceof Locale)) { - return false; - } - return this.localeString() === other.localeString(); - } - }]); - - return Locale; -}(); - -exports.default = Locale; -function _init() { - Locale.ENGLISH = new Locale('en'); - Locale.US = new Locale('en', 'US', 'en'); - Locale.UK = new Locale('en', 'GB'); - Locale.CANADA = new Locale('en', 'CA'); - Locale.FRENCH = new Locale('fr'); - Locale.FRANCE = new Locale('fr', 'FR', 'fr'); - Locale.GERMAN = new Locale('de'); - Locale.GERMANY = new Locale('de', 'DE', 'de'); -} - -/***/ }), - -/***/ "./src/_init.js": -/*!**********************!*\ - !*** ./src/_init.js ***! - \**********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _Locale = __webpack_require__(/*! ./Locale */ "./src/Locale.js"); - -var _WeekFields = __webpack_require__(/*! ./temporal/WeekFields */ "./src/temporal/WeekFields.js"); - -/* - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var isInit = false; - -function init() { - if (isInit) { - return; - } - - isInit = true; - - (0, _Locale._init)(); - (0, _WeekFields._init)(); -} - -init(); - -/***/ }), - -/***/ "./src/format/LocaleDateTimeFormatter.js": -/*!***********************************************!*\ - !*** ./src/format/LocaleDateTimeFormatter.js ***! - \***********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _Locale = __webpack_require__(/*! ../Locale */ "./src/Locale.js"); - -var _Locale2 = _interopRequireDefault(_Locale); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var requireNonNull = _jsJoda._.assert.requireNonNull; - -var LocaleDateTimeFormatter = function (_DateTimeFormatter) { - _inherits(LocaleDateTimeFormatter, _DateTimeFormatter); - - function LocaleDateTimeFormatter() { - _classCallCheck(this, LocaleDateTimeFormatter); - - return _possibleConstructorReturn(this, (LocaleDateTimeFormatter.__proto__ || Object.getPrototypeOf(LocaleDateTimeFormatter)).apply(this, arguments)); - } - - _createClass(LocaleDateTimeFormatter, [{ - key: 'withLocale', - value: function withLocale(locale) { - requireNonNull(locale, 'locale'); - if (locale.equals(this._locale)) { - return this; - } - return new _jsJoda.DateTimeFormatter(this._printerParser, locale, this._decimalStyle, this._resolverStyle, this._resolverFields, this._chrono, this._zone); - } - }]); - - return LocaleDateTimeFormatter; -}(_jsJoda.DateTimeFormatter); - -exports.default = LocaleDateTimeFormatter; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/LocaleStore.js": -/*!***********************************!*\ - !*** ./src/format/LocaleStore.js ***! - \***********************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var createEntry = exports.createEntry = function createEntry(text, field) { - return { - key: text, - value: field, - toString: function toString() { - return text + '->' + field; - } - }; -}; - -var _comparator = function _comparator(obj1, obj2) { - return obj2.key.length - obj1.key.length; -}; - -var LocaleStore = exports.LocaleStore = function () { - function LocaleStore(valueTextMap) { - _classCallCheck(this, LocaleStore); - - this._valueTextMap = valueTextMap; - var map = {}; - var allList = []; - Object.keys(valueTextMap).forEach(function (style) { - var reverse = {}; - Object.keys(valueTextMap[style]).forEach(function (key) { - var value = valueTextMap[style][key]; - if (reverse[value] === undefined) { - reverse[value] = createEntry(value, Number.parseInt(key)); - } - }); - var list = Object.values(reverse); - list.sort(_comparator); - map[style] = list; - allList = allList.concat(list); - map[null] = allList; - }); - allList.sort(_comparator); - this._parsable = map; - } - - _createClass(LocaleStore, [{ - key: 'getText', - value: function getText(value, style) { - var map = this._valueTextMap[style]; - return map != null ? map[value] : null; - } - }, { - key: 'getTextIterator', - value: function getTextIterator(style) { - var list = this._parsable[style]; - return list != null ? list[Symbol.iterator]() : null; - } - }]); - - return LocaleStore; -}(); - -/***/ }), - -/***/ "./src/format/cldr/CldrDateTimeFormatterBuilder.js": -/*!*********************************************************!*\ - !*** ./src/format/cldr/CldrDateTimeFormatterBuilder.js ***! - \*********************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _TextPrinterParser = __webpack_require__(/*! ../parser/TextPrinterParser */ "./src/format/parser/TextPrinterParser.js"); - -var _TextPrinterParser2 = _interopRequireDefault(_TextPrinterParser); - -var _CldrDateTimeTextProvider = __webpack_require__(/*! ./CldrDateTimeTextProvider */ "./src/format/cldr/CldrDateTimeTextProvider.js"); - -var _CldrDateTimeTextProvider2 = _interopRequireDefault(_CldrDateTimeTextProvider); - -var _CldrZoneTextPrinterParser = __webpack_require__(/*! ./CldrZoneTextPrinterParser */ "./src/format/cldr/CldrZoneTextPrinterParser.js"); - -var _CldrZoneTextPrinterParser2 = _interopRequireDefault(_CldrZoneTextPrinterParser); - -var _LocaleStore = __webpack_require__(/*! ../LocaleStore */ "./src/format/LocaleStore.js"); - -var _LocalizedOffsetPrinterParser = __webpack_require__(/*! ../parser/LocalizedOffsetPrinterParser */ "./src/format/parser/LocalizedOffsetPrinterParser.js"); - -var _LocalizedOffsetPrinterParser2 = _interopRequireDefault(_LocalizedOffsetPrinterParser); - -var _WeekFieldsPrinterParser = __webpack_require__(/*! ../parser/WeekFieldsPrinterParser */ "./src/format/parser/WeekFieldsPrinterParser.js"); - -var _WeekFieldsPrinterParser2 = _interopRequireDefault(_WeekFieldsPrinterParser); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var CldrDateTimeFormatterBuilder = function (_DateTimeFormatterBui) { - _inherits(CldrDateTimeFormatterBuilder, _DateTimeFormatterBui); - - function CldrDateTimeFormatterBuilder() { - _classCallCheck(this, CldrDateTimeFormatterBuilder); - - return _possibleConstructorReturn(this, (CldrDateTimeFormatterBuilder.__proto__ || Object.getPrototypeOf(CldrDateTimeFormatterBuilder)).apply(this, arguments)); - } - - _createClass(CldrDateTimeFormatterBuilder, [{ - key: 'appendText', - value: function appendText(field, styleOrMap) { - if (styleOrMap === undefined) { - return this.appendTextField(field); - } else if (styleOrMap instanceof _jsJoda.TextStyle) { - return this.appendTextFieldStyle(field, styleOrMap); - } else { - return this.appendTextFieldMap(field, styleOrMap); - } - } - }, { - key: 'appendTextField', - value: function appendTextField(field) { - return this.appendTextFieldStyle(field, _jsJoda.TextStyle.FULL); - } - }, { - key: 'appendTextFieldStyle', - value: function appendTextFieldStyle(field, textStyle) { - requireNonNull(field, 'field'); - requireInstance(field, _jsJoda.TemporalField, 'field'); - requireNonNull(textStyle, 'textStyle'); - requireInstance(textStyle, _jsJoda.TextStyle, 'textStyle'); - this._appendInternal(new _TextPrinterParser2.default(field, textStyle, new _CldrDateTimeTextProvider2.default())); - return this; - } - }, { - key: 'appendTextFieldMap', - value: function appendTextFieldMap(field, textLookup) { - requireNonNull(field, 'field'); - requireInstance(field, _jsJoda.ChronoField, 'field'); - requireNonNull(textLookup, 'textLookup'); - var copy = Object.assign({}, textLookup); - var map = {}; - map[_jsJoda.TextStyle.FULL] = copy; - var store = new _LocaleStore.LocaleStore(map); - var provider = { - getText: function getText(field, value, style) { - return store.getText(value, style); - }, - getTextIterator: function getTextIterator(field, style) { - return store.getTextIterator(style); - } - }; - this._appendInternal(new _TextPrinterParser2.default(field, _jsJoda.TextStyle.FULL, provider)); - return this; - } - }, { - key: 'appendWeekField', - value: function appendWeekField(field, count) { - requireNonNull(field, 'field'); - requireNonNull(count, 'count'); - this._appendInternal(new _WeekFieldsPrinterParser2.default(field, count)); - return this; - } - }, { - key: 'appendZoneText', - value: function appendZoneText(textStyle) { - this._appendInternal(new _CldrZoneTextPrinterParser2.default(textStyle)); - return this; - } - }, { - key: 'appendLocalizedOffset', - value: function appendLocalizedOffset(textStyle) { - requireNonNull(textStyle, 'textStyle'); - if (textStyle !== _jsJoda.TextStyle.FULL && textStyle !== _jsJoda.TextStyle.SHORT) { - throw new _jsJoda.IllegalArgumentException('Style must be either full or short'); - } - this._appendInternal(new _LocalizedOffsetPrinterParser2.default(textStyle)); - return this; - } - }]); - - return CldrDateTimeFormatterBuilder; -}(_jsJoda.DateTimeFormatterBuilder); - -exports.default = CldrDateTimeFormatterBuilder; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/cldr/CldrDateTimeTextProvider.js": -/*!*****************************************************!*\ - !*** ./src/format/cldr/CldrDateTimeTextProvider.js ***! - \*****************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -var _LocaleStore = __webpack_require__(/*! ../LocaleStore */ "./src/format/LocaleStore.js"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var CldrDateTimeTextProvider = function () { - function CldrDateTimeTextProvider() { - _classCallCheck(this, CldrDateTimeTextProvider); - - this._cache = {}; - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - } - - _createClass(CldrDateTimeTextProvider, [{ - key: 'getAvailableLocales', - value: function getAvailableLocales() { - if (true) { - return ["de","de-DE"]; - } - - return (0, _cldrData2.default)('availableLocales.json').availableLocales; - } - }, { - key: 'getText', - value: function getText(field, value, style, locale) { - var store = this._findStore(field, locale); - if (store instanceof _LocaleStore.LocaleStore) { - return store.getText(value, style); - } - return null; - } - }, { - key: 'getTextIterator', - value: function getTextIterator(field, style, locale) { - var store = this._findStore(field, locale); - if (store instanceof _LocaleStore.LocaleStore) { - return store.getTextIterator(style); - } - return null; - } - }, { - key: '_findStore', - value: function _findStore(field, locale) { - var key = (0, _LocaleStore.createEntry)(field, locale); - var store = this._cache[key]; - if (store === undefined) { - store = this._createStore(field, locale); - this._cache[key] = store; - } - return store; - } - }, { - key: '_createStore', - value: function _createStore(field, locale) { - _cldrjs2.default.load((0, _cldrData2.default)('main/' + locale.localeString() + '/ca-gregorian.json')); - var cldr = new _cldrjs2.default(locale.localeString()); - if (field === _jsJoda.ChronoField.MONTH_OF_YEAR) { - var monthsData = cldr.main('dates/calendars/gregorian/months/format'); - var styleMap = {}; - var data = {}; - data[1] = monthsData.wide[1]; - data[2] = monthsData.wide[2]; - data[3] = monthsData.wide[3]; - data[4] = monthsData.wide[4]; - data[5] = monthsData.wide[5]; - data[6] = monthsData.wide[6]; - data[7] = monthsData.wide[7]; - data[8] = monthsData.wide[8]; - data[9] = monthsData.wide[9]; - data[10] = monthsData.wide[10]; - data[11] = monthsData.wide[11]; - data[12] = monthsData.wide[12]; - styleMap[_jsJoda.TextStyle.FULL] = data; - - data = {}; - data[1] = monthsData.narrow[1]; - data[2] = monthsData.narrow[2]; - data[3] = monthsData.narrow[3]; - data[4] = monthsData.narrow[4]; - data[5] = monthsData.narrow[5]; - data[6] = monthsData.narrow[6]; - data[7] = monthsData.narrow[7]; - data[8] = monthsData.narrow[8]; - data[9] = monthsData.narrow[9]; - data[10] = monthsData.narrow[10]; - data[11] = monthsData.narrow[11]; - data[12] = monthsData.narrow[12]; - styleMap[_jsJoda.TextStyle.NARROW] = data; - - data = {}; - data[1] = monthsData.abbreviated[1]; - data[2] = monthsData.abbreviated[2]; - data[3] = monthsData.abbreviated[3]; - data[4] = monthsData.abbreviated[4]; - data[5] = monthsData.abbreviated[5]; - data[6] = monthsData.abbreviated[6]; - data[7] = monthsData.abbreviated[7]; - data[8] = monthsData.abbreviated[8]; - data[9] = monthsData.abbreviated[9]; - data[10] = monthsData.abbreviated[10]; - data[11] = monthsData.abbreviated[11]; - data[12] = monthsData.abbreviated[12]; - styleMap[_jsJoda.TextStyle.SHORT] = data; - return this._createLocaleStore(styleMap); - } - if (field === _jsJoda.ChronoField.DAY_OF_WEEK) { - var daysData = cldr.main('dates/calendars/gregorian/days/format'); - var _styleMap = {}; - var _data = {}; - _data[1] = daysData.wide.mon; - _data[2] = daysData.wide.tue; - _data[3] = daysData.wide.wed; - _data[4] = daysData.wide.thu; - _data[5] = daysData.wide.fri; - _data[6] = daysData.wide.sat; - _data[7] = daysData.wide.sun; - _styleMap[_jsJoda.TextStyle.FULL] = _data; - - _data = {}; - _data[1] = daysData.narrow.mon; - _data[2] = daysData.narrow.tue; - _data[3] = daysData.narrow.wed; - _data[4] = daysData.narrow.thu; - _data[5] = daysData.narrow.fri; - _data[6] = daysData.narrow.sat; - _data[7] = daysData.narrow.sun; - _styleMap[_jsJoda.TextStyle.NARROW] = _data; - - _data = {}; - _data[1] = daysData.abbreviated.mon; - _data[2] = daysData.abbreviated.tue; - _data[3] = daysData.abbreviated.wed; - _data[4] = daysData.abbreviated.thu; - _data[5] = daysData.abbreviated.fri; - _data[6] = daysData.abbreviated.sat; - _data[7] = daysData.abbreviated.sun; - _styleMap[_jsJoda.TextStyle.SHORT] = _data; - return this._createLocaleStore(_styleMap); - } - if (field === _jsJoda.ChronoField.AMPM_OF_DAY) { - var dayPeriodsData = cldr.main('dates/calendars/gregorian/dayPeriods/format'); - var _styleMap2 = {}; - var _data2 = {}; - _data2[0] = dayPeriodsData.wide.am; - _data2[1] = dayPeriodsData.wide.pm; - _styleMap2[_jsJoda.TextStyle.FULL] = _data2; - - _data2 = {}; - _data2[0] = dayPeriodsData.narrow.am; - _data2[1] = dayPeriodsData.narrow.pm; - _styleMap2[_jsJoda.TextStyle.NARROW] = _data2; - - _data2 = {}; - _data2[0] = dayPeriodsData.abbreviated.am; - _data2[1] = dayPeriodsData.abbreviated.pm; - _styleMap2[_jsJoda.TextStyle.SHORT] = _data2; - - return this._createLocaleStore(_styleMap2); - } - if (field === _jsJoda.ChronoField.ERA) { - var erasData = cldr.main('dates/calendars/gregorian/eras'); - var _styleMap3 = {}; - var _data3 = {}; - _data3[0] = erasData.eraNames['0']; - _data3[1] = erasData.eraNames['1']; - _styleMap3[_jsJoda.TextStyle.FULL] = _data3; - - _data3 = {}; - _data3[0] = erasData.eraNarrow['0']; - _data3[1] = erasData.eraNarrow['1']; - _styleMap3[_jsJoda.TextStyle.NARROW] = _data3; - - _data3 = {}; - _data3[0] = erasData.eraAbbr['0']; - _data3[1] = erasData.eraAbbr['1']; - _styleMap3[_jsJoda.TextStyle.SHORT] = _data3; - - return this._createLocaleStore(_styleMap3); - } - if (field === _jsJoda.IsoFields.QUARTER_OF_YEAR) { - var quartersData = cldr.main('dates/calendars/gregorian/quarters/format'); - var _styleMap4 = {}; - var _data4 = {}; - _data4[1] = quartersData.wide['1']; - _data4[2] = quartersData.wide['2']; - _data4[3] = quartersData.wide['3']; - _data4[4] = quartersData.wide['4']; - _styleMap4[_jsJoda.TextStyle.FULL] = _data4; - - _data4 = {}; - _data4[1] = quartersData.narrow['1']; - _data4[2] = quartersData.narrow['2']; - _data4[3] = quartersData.narrow['3']; - _data4[4] = quartersData.narrow['4']; - _styleMap4[_jsJoda.TextStyle.NARROW] = _data4; - - _data4 = {}; - _data4[1] = quartersData.abbreviated['1']; - _data4[2] = quartersData.abbreviated['2']; - _data4[3] = quartersData.abbreviated['3']; - _data4[4] = quartersData.abbreviated['4']; - _styleMap4[_jsJoda.TextStyle.SHORT] = _data4; - - return this._createLocaleStore(_styleMap4); - } - return null; - } - }, { - key: '_createLocaleStore', - value: function _createLocaleStore(valueTextMap) { - valueTextMap[_jsJoda.TextStyle.FULL_STANDALONE] = valueTextMap[_jsJoda.TextStyle.FULL]; - valueTextMap[_jsJoda.TextStyle.SHORT_STANDALONE] = valueTextMap[_jsJoda.TextStyle.SHORT]; - - if (Object.keys(valueTextMap).includes(_jsJoda.TextStyle.NARROW) && !Object.keys(valueTextMap).includes(_jsJoda.TextStyle.NARROW_STANDALONE)) { - valueTextMap[_jsJoda.TextStyle.NARROW_STANDALONE] = valueTextMap[_jsJoda.TextStyle.NARROW]; - } - return new _LocaleStore.LocaleStore(valueTextMap); - } - }]); - - return CldrDateTimeTextProvider; -}(); - -exports.default = CldrDateTimeTextProvider; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/cldr/CldrZoneTextPrinterParser.js": -/*!******************************************************!*\ - !*** ./src/format/cldr/CldrZoneTextPrinterParser.js ***! - \******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var LENGTH_COMPARATOR = function LENGTH_COMPARATOR(str1, str2) { - var cmp = str2.length - str1.length; - if (cmp === 0) { - cmp = str1.localeCompare(str2); - } - return cmp; -}; - -var CldrZoneTextPrinterParser = function () { - function CldrZoneTextPrinterParser(textStyle) { - _classCallCheck(this, CldrZoneTextPrinterParser); - - requireNonNull(textStyle, 'textStyle'); - requireInstance(textStyle, _jsJoda.TextStyle, 'textStyle'); - this._textStyle = textStyle; - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/metaZones.json')); - } - - _createClass(CldrZoneTextPrinterParser, [{ - key: '_resolveZoneIdText', - value: function _resolveZoneIdText(cldr, zoneId, style, type, mapZones) { - var zoneData = cldr.main('dates/timeZoneNames/zone/' + zoneId + '/' + style + '/' + type); - if (zoneData) { - return zoneData; - } else { - var metazoneInfo = cldr.get('supplemental/metaZones/metazoneInfo/timezone/' + zoneId); - if (metazoneInfo) { - var metazone = metazoneInfo[metazoneInfo.length - 1]['usesMetazone']['_mzone']; - var metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/' + type); - if (metaZoneData) { - return metaZoneData; - } else { - metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/generic'); - if (!metaZoneData) { - metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/standard'); - } - if (metaZoneData) { - return metaZoneData; - } else { - var preferredZone = mapZones[metazone][cldr.attributes.territory]; - if (preferredZone) { - if (preferredZone !== zoneId) { - return this._resolveZoneIdText(cldr, preferredZone, style, type, mapZones); - } - } else { - var goldenZone = mapZones[metazone]['001']; - if (goldenZone !== zoneId) { - return this._resolveZoneIdText(cldr, goldenZone, style, type, mapZones); - } - } - } - } - } - } - } - }, { - key: 'print', - value: function print(context, buf) { - - var zone = context.getValueQuery(_jsJoda.TemporalQueries.zoneId()); - - if (zone == null) { - return false; - } - if (zone.normalized() instanceof _jsJoda.ZoneOffset) { - buf.append(zone.id()); - return true; - } - var daylight = false; - var hasDaylightSupport = false; - - var tzType = hasDaylightSupport ? daylight ? 'daylight' : 'standard' : 'generic'; - var tzstyle = this._textStyle.asNormal() === _jsJoda.TextStyle.FULL ? 'long' : 'short'; - _cldrjs2.default.load((0, _cldrData2.default)('main/' + context.locale().localeString() + '/timeZoneNames.json')); - var cldr = new _cldrjs2.default(context.locale().localeString()); - var mapZones = {}; - - cldr.get('supplemental/metaZones/metazones').forEach(function (metaZone) { - if (metaZone.mapZone) { - if (!mapZones[metaZone.mapZone._other]) { - mapZones[metaZone.mapZone._other] = {}; - } - mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type; - } - }); - - var text = this._resolveZoneIdText(cldr, zone.id(), tzstyle, tzType, mapZones); - if (text) { - buf.append(text); - } else { - buf.append(zone.id()); - } - return true; - } - }, { - key: 'parse', - value: function parse(context, text, position) { - var ids = {}; - _cldrjs2.default.load((0, _cldrData2.default)('main/' + context.locale().localeString() + '/timeZoneNames.json')); - var cldr = new _cldrjs2.default(context.locale().localeString()); - var mapZones = {}; - - cldr.get('supplemental/metaZones/metazones').forEach(function (metaZone) { - if (metaZone.mapZone) { - if (!mapZones[metaZone.mapZone._other]) { - mapZones[metaZone.mapZone._other] = {}; - } - mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type; - } - }); - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = _jsJoda.ZoneRulesProvider.getAvailableZoneIds()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var id = _step.value; - - ids[id] = id; - var tzstyle = this._textStyle.asNormal() === _jsJoda.TextStyle.FULL ? 'long' : 'short'; - - var genericText = this._resolveZoneIdText(cldr, id, tzstyle, 'generic', mapZones); - if (genericText) { - ids[genericText] = id; - } - var standardText = this._resolveZoneIdText(cldr, id, tzstyle, 'standard', mapZones); - if (standardText) { - ids[standardText] = id; - } - var daylightText = this._resolveZoneIdText(cldr, id, tzstyle, 'daylight', mapZones); - if (daylightText) { - ids[daylightText] = id; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - var sortedKeys = Object.keys(ids).sort(LENGTH_COMPARATOR); - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = sortedKeys[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var name = _step2.value; - - if (context.subSequenceEquals(text, position, name, 0, name.length)) { - context.setParsedZone(_jsJoda.ZoneId.of(ids[name])); - return position + name.length; - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - return ~position; - } - }, { - key: 'toString', - value: function toString() { - return 'ZoneText(' + this._textStyle + ')'; - } - }]); - - return CldrZoneTextPrinterParser; -}(); - -exports.default = CldrZoneTextPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/LocalizedOffsetPrinterParser.js": -/*!***********************************************************!*\ - !*** ./src/format/parser/LocalizedOffsetPrinterParser.js ***! - \***********************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var MathUtil = _jsJoda._.MathUtil; - -var LocalizedOffsetPrinterParser = function () { - function LocalizedOffsetPrinterParser(textStyle) { - _classCallCheck(this, LocalizedOffsetPrinterParser); - - this._textStyle = textStyle; - } - - _createClass(LocalizedOffsetPrinterParser, [{ - key: 'textStyle', - value: function textStyle() { - return this._textStyle; - } - }, { - key: 'print', - value: function print(context, buf) { - var offsetSecs = context.getValue(_jsJoda.ChronoField.OFFSET_SECONDS); - - if (offsetSecs == null) { - return false; - } - buf.append('GMT'); - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return new _jsJoda.DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').print(context, buf); - } - var totalSecs = MathUtil.safeToInt(offsetSecs); - if (totalSecs !== 0) { - var absHours = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 3600), 100)); - var absMinutes = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 60), 60)); - var absSeconds = Math.abs(MathUtil.intMod(totalSecs, 60)); - buf.append(totalSecs < 0 ? '-' : '+').append(absHours); - if (absMinutes > 0 || absSeconds > 0) { - buf.append(':').append(MathUtil.intDiv(absMinutes, 10)).append(MathUtil.intMod(absMinutes, 10)); - if (absSeconds > 0) { - buf.append(':').append(MathUtil.intDiv(absSeconds, 10)).append(MathUtil.intMod(absSeconds, 10)); - } - } - } - return true; - } - }, { - key: 'parse', - value: function parse(context, text, position) { - if (context.subSequenceEquals(text, position, 'GMT', 0, 3) === false) { - return ~position; - } - position += 3; - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return new _jsJoda.DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').parse(context, text, position); - } - var end = text.length; - if (position === end) { - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, 0, position, position); - } - var sign = text.charAt(position); - if (sign !== '+' && sign !== '-') { - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, 0, position, position); - } - var negative = sign === '-' ? -1 : 1; - - if (position === end) { - return ~position; - } - position++; - - var ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var hour = MathUtil.parseInt(ch); - if (position !== end) { - ch = text.charAt(position); - if (ch >= '0' && ch <= '9') { - hour = hour * 10 + MathUtil.parseInt(ch); - if (hour > 23) { - return ~position; - } - position++; - } - } - if (position === end || text.charAt(position) !== ':') { - var _offset = negative * 3600 * hour; - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, _offset, position, position); - } - position++; - - if (position > end - 2) { - return ~position; - } - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var min = MathUtil.parseInt(ch); - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - min = min * 10 + MathUtil.parseInt(ch); - if (min > 59) { - return ~position; - } - if (position === end || text.charAt(position) !== ':') { - var _offset2 = negative * (3600 * hour + 60 * min); - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, _offset2, position, position); - } - position++; - - if (position > end - 2) { - return ~position; - } - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var sec = MathUtil.parseInt(ch); - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - sec = sec * 10 + MathUtil.parseInt(ch); - if (sec > 59) { - return ~position; - } - var offset = negative * (3600 * hour + 60 * min + sec); - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, offset, position, position); - } - }, { - key: 'toString', - value: function toString() { - return 'LocalizedOffset(' + this._textStyle + ')'; - } - }]); - - return LocalizedOffsetPrinterParser; -}(); - -exports.default = LocalizedOffsetPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/TextPrinterParser.js": -/*!************************************************!*\ - !*** ./src/format/parser/TextPrinterParser.js ***! - \************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var TextPrinterParser = function () { - function TextPrinterParser(field, textStyle, provider) { - _classCallCheck(this, TextPrinterParser); - - this._field = field; - this._textStyle = textStyle; - this._provider = provider; - } - - _createClass(TextPrinterParser, [{ - key: 'field', - value: function field() { - return this._field; - } - }, { - key: 'textStyle', - value: function textStyle() { - return this._textStyle; - } - }, { - key: 'provider', - value: function provider() { - return this._provider; - } - }, { - key: 'print', - value: function print(context, buf) { - var value = context.getValue(this._field); - if (value === null) { - return false; - } - var text = this._provider.getText(this._field, value, this._textStyle, context.locale()); - if (text === null) { - return this._numberPrinterParser().print(context, buf); - } - buf.append(text); - return true; - } - }, { - key: 'parse', - value: function parse(context, parseText, position) { - var length = parseText.length; - if (position < 0 || position > length) { - throw new _jsJoda.IllegalArgumentException('The position is invalid: ' + position); - } - var style = context.isStrict() ? this._textStyle : null; - var it = this._provider.getTextIterator(this._field, style, context.locale()); - if (it != null) { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = it[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var entry = _step.value; - - var itText = entry.key; - if (context.subSequenceEquals(itText, 0, parseText, position, itText.length)) { - return context.setParsedField(this._field, entry.value, position, position + itText.length); - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - if (context.isStrict()) { - return ~position; - } - } - return this._numberPrinterParser().parse(context, parseText, position); - } - }, { - key: '_numberPrinterParser', - value: function _numberPrinterParser() { - if (this._currentNumberPrinterParser == null) { - this._currentNumberPrinterParser = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(this._field, 1, 19, _jsJoda.SignStyle.NORMAL); - } - return this._currentNumberPrinterParser; - } - }, { - key: 'toString', - value: function toString() { - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return 'Text(' + this._field + ')'; - } - return 'Text(' + this._field + ',' + this._textStyle + ')'; - } - }]); - - return TextPrinterParser; -}(); - -exports.default = TextPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/WeekFieldsPrinterParser.js": -/*!******************************************************!*\ - !*** ./src/format/parser/WeekFieldsPrinterParser.js ***! - \******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _WeekFields = __webpack_require__(/*! ../../temporal/WeekFields */ "./src/temporal/WeekFields.js"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var StringBuilder = _jsJoda._.StringBuilder; - -var WeekFieldsPrinterParser = function () { - function WeekFieldsPrinterParser(letter, count) { - _classCallCheck(this, WeekFieldsPrinterParser); - - this._letter = letter; - this._count = count; - } - - _createClass(WeekFieldsPrinterParser, [{ - key: 'print', - value: function print(context, buf) { - var weekFields = _WeekFields.WeekFields.of(context.locale()); - var pp = this._evaluate(weekFields); - return pp.print(context, buf); - } - }, { - key: 'parse', - value: function parse(context, text, position) { - var weekFields = _WeekFields.WeekFields.of(context.locale()); - var pp = this._evaluate(weekFields); - return pp.parse(context, text, position); - } - }, { - key: '_evaluate', - value: function _evaluate(weekFields) { - var pp = null; - switch (this._letter) { - case 'e': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'c': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'w': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfWeekBasedYear(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'W': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfMonth(), 1, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'Y': - if (this._count === 2) { - pp = new _jsJoda.DateTimeFormatterBuilder.ReducedPrinterParser(weekFields.weekBasedYear(), 2, 2, 0, _jsJoda.DateTimeFormatterBuilder.ReducedPrinterParser.BASE_DATE); - } else { - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekBasedYear(), this._count, 19, this._count < 4 ? _jsJoda.SignStyle.NORMAL : _jsJoda.SignStyle.EXCEEDS_PAD, -1); - } - break; - } - return pp; - } - }, { - key: 'toString', - value: function toString() { - var sb = new StringBuilder(30); - sb.append('Localized('); - if (this._letter === 'Y') { - if (this._count === 1) { - sb.append('WeekBasedYear'); - } else if (this._count === 2) { - sb.append('ReducedValue(WeekBasedYear,2,2,2000-01-01)'); - } else { - sb.append('WeekBasedYear,').append(this._count).append(',').append(19).append(',').append(this._count < 4 ? _jsJoda.SignStyle.NORMAL : _jsJoda.SignStyle.EXCEEDS_PAD); - } - } else { - if (this._letter === 'c' || this._letter === 'e') { - sb.append('DayOfWeek'); - } else if (this._letter === 'w') { - sb.append('WeekOfWeekBasedYear'); - } else if (this._letter === 'W') { - sb.append('WeekOfMonth'); - } - sb.append(','); - sb.append(this._count); - } - sb.append(')'); - return sb.toString(); - } - }]); - - return WeekFieldsPrinterParser; -}(); - -exports.default = WeekFieldsPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/js-joda-locale.js": -/*!*******************************!*\ - !*** ./src/js-joda-locale.js ***! - \*******************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _plug = __webpack_require__(/*! ./plug */ "./src/plug.js"); - -var _plug2 = _interopRequireDefault(_plug); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = _plug2.default; /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/plug.js": -/*!*********************!*\ - !*** ./src/plug.js ***! - \*********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (jsJoda) { - Object.getOwnPropertyNames(_CldrDateTimeFormatterBuilder2.default.prototype).forEach(function (prop) { - if (prop !== 'constructor') { - jsJoda.DateTimeFormatterBuilder.prototype[prop] = _CldrDateTimeFormatterBuilder2.default.prototype[prop]; - } - }); - - Object.getOwnPropertyNames(_LocaleDateTimeFormatter2.default.prototype).forEach(function (prop) { - if (prop !== 'constructor') { - jsJoda.DateTimeFormatter.prototype[prop] = _LocaleDateTimeFormatter2.default.prototype[prop]; - } - }); - - jsJoda.Locale = _Locale2.default; -}; - -var _CldrDateTimeFormatterBuilder = __webpack_require__(/*! ./format/cldr/CldrDateTimeFormatterBuilder */ "./src/format/cldr/CldrDateTimeFormatterBuilder.js"); - -var _CldrDateTimeFormatterBuilder2 = _interopRequireDefault(_CldrDateTimeFormatterBuilder); - -var _LocaleDateTimeFormatter = __webpack_require__(/*! ./format/LocaleDateTimeFormatter */ "./src/format/LocaleDateTimeFormatter.js"); - -var _LocaleDateTimeFormatter2 = _interopRequireDefault(_LocaleDateTimeFormatter); - -var _Locale = __webpack_require__(/*! ./Locale */ "./src/Locale.js"); - -var _Locale2 = _interopRequireDefault(_Locale); - -__webpack_require__(/*! ./_init */ "./src/_init.js"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = exports['default']; /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -/***/ }), - -/***/ "./src/temporal/WeekFields.js": -/*!************************************!*\ - !*** ./src/temporal/WeekFields.js ***! - \************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.WeekFields = exports.ComputedDayOfField = undefined; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -exports._init = _init; - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var MathUtil = _jsJoda._.MathUtil, - _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var DAY_OF_WEEK_RANGE = _jsJoda.ValueRange.of(1, 7); -var WEEK_OF_MONTH_RANGE = _jsJoda.ValueRange.of(0, 1, 4, 6); -var WEEK_OF_YEAR_RANGE = _jsJoda.ValueRange.of(0, 1, 52, 54); -var WEEK_OF_WEEK_BASED_YEAR_RANGE = _jsJoda.ValueRange.of(1, 52, 53); -var WEEK_BASED_YEAR_RANGE = _jsJoda.ChronoField.YEAR.range(); - -var _weekDayMap = { - 'mon': _jsJoda.DayOfWeek.MONDAY, - 'tue': _jsJoda.DayOfWeek.TUESDAY, - 'wed': _jsJoda.DayOfWeek.WEDNESDAY, - 'thu': _jsJoda.DayOfWeek.THURSDAY, - 'fri': _jsJoda.DayOfWeek.FRIDAY, - 'sat': _jsJoda.DayOfWeek.SATURDAY, - 'sun': _jsJoda.DayOfWeek.SUNDAY -}; - -var ComputedDayOfField = exports.ComputedDayOfField = function () { - _createClass(ComputedDayOfField, null, [{ - key: 'ofDayOfWeekField', - value: function ofDayOfWeekField(weekDef) { - return new ComputedDayOfField('DayOfWeek', weekDef, _jsJoda.ChronoUnit.DAYS, _jsJoda.ChronoUnit.WEEKS, DAY_OF_WEEK_RANGE); - } - }, { - key: 'ofWeekOfMonthField', - value: function ofWeekOfMonthField(weekDef) { - return new ComputedDayOfField('WeekOfMonth', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.ChronoUnit.MONTHS, WEEK_OF_MONTH_RANGE); - } - }, { - key: 'ofWeekOfYearField', - value: function ofWeekOfYearField(weekDef) { - return new ComputedDayOfField('WeekOfYear', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.ChronoUnit.YEARS, WEEK_OF_YEAR_RANGE); - } - }, { - key: 'ofWeekOfWeekBasedYearField', - value: function ofWeekOfWeekBasedYearField(weekDef) { - return new ComputedDayOfField('WeekOfWeekBasedYear', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.IsoFields.WEEK_BASED_YEARS, WEEK_OF_WEEK_BASED_YEAR_RANGE); - } - }, { - key: 'ofWeekBasedYearField', - value: function ofWeekBasedYearField(weekDef) { - return new ComputedDayOfField('WeekBasedYear', weekDef, _jsJoda.IsoFields.WEEK_BASED_YEARS, _jsJoda.ChronoUnit.FOREVER, WEEK_BASED_YEAR_RANGE); - } - }]); - - function ComputedDayOfField(name, weekDef, baseUnit, rangeUnit, range) { - _classCallCheck(this, ComputedDayOfField); - - this._name = name; - this._weekDef = weekDef; - this._baseUnit = baseUnit; - this._rangeUnit = rangeUnit; - this._range = range; - } - - _createClass(ComputedDayOfField, [{ - key: 'getFrom', - value: function getFrom(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var dow = this._localizedDayOfWeek(temporal, sow); - - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return dow; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - return this._localizedWeekOfMonth(temporal, dow); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return this._localizedWeekOfYear(temporal, dow); - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return this._localizedWOWBY(temporal); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return this._localizedWBY(temporal); - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - } - }, { - key: '_localizedDayOfWeek', - value: function _localizedDayOfWeek(temporal, sow) { - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - return MathUtil.floorMod(isoDow - sow, 7) + 1; - } - }, { - key: '_localizedWeekOfMonth', - value: function _localizedWeekOfMonth(temporal, dow) { - var dom = temporal.get(_jsJoda.ChronoField.DAY_OF_MONTH); - var offset = this._startOfWeekOffset(dom, dow); - return ComputedDayOfField._computeWeek(offset, dom); - } - }, { - key: '_localizedWeekOfYear', - value: function _localizedWeekOfYear(temporal, dow) { - var doy = temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR); - var offset = this._startOfWeekOffset(doy, dow); - return ComputedDayOfField._computeWeek(offset, doy); - } - }, { - key: '_localizedWOWBY', - value: function _localizedWOWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - var previous = _jsJoda.LocalDate.from(temporal).minus(1, _jsJoda.ChronoUnit.WEEKS); - return this._localizedWeekOfYear(previous, dow) + 1; - } else if (woy >= 53) { - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return woy - (weekIndexOfFirstWeekNextYear - 1); - } - } - return woy; - } - }, { - key: '_localizedWBY', - value: function _localizedWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - return year - 1; - } else if (woy < 53) { - return year; - } - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return year + 1; - } - return year; - } - }, { - key: '_startOfWeekOffset', - value: function _startOfWeekOffset(day, dow) { - var weekStart = MathUtil.floorMod(day - dow, 7); - var offset = -weekStart; - if (weekStart + 1 > this._weekDef.minimalDaysInFirstWeek()) { - offset = 7 - weekStart; - } - return offset; - } - }, { - key: 'adjustInto', - value: function adjustInto(temporal, newValue) { - var newVal = this._range.checkValidIntValue(newValue, this); - var currentVal = temporal.get(this); - if (newVal === currentVal) { - return temporal; - } - if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - var baseWowby = temporal.get(this._weekDef.weekOfWeekBasedYear()); - var diffWeeks = MathUtil.roundDown((newValue - currentVal) * 52.1775); - var result = temporal.plus(diffWeeks, _jsJoda.ChronoUnit.WEEKS); - if (result.get(this) > newVal) { - var newWowby = result.get(this._weekDef.weekOfWeekBasedYear()); - result = result.minus(newWowby, _jsJoda.ChronoUnit.WEEKS); - } else { - if (result.get(this) < newVal) { - result = result.plus(2, _jsJoda.ChronoUnit.WEEKS); - } - - var _newWowby = result.get(this._weekDef.weekOfWeekBasedYear()); - result = result.plus(baseWowby - _newWowby, _jsJoda.ChronoUnit.WEEKS); - if (result.get(this) > newVal) { - result = result.minus(1, _jsJoda.ChronoUnit.WEEKS); - } - } - return result; - } - - var delta = newVal - currentVal; - return temporal.plus(delta, this._baseUnit); - } - }, { - key: 'resolve', - value: function resolve(fieldValues, partialTemporal, resolverStyle) { - var sow = this._weekDef.firstDayOfWeek().value(); - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - var value = fieldValues.remove(this); - var localDow = this._range.checkValidIntValue(value, this); - var _isoDow = MathUtil.floorMod(sow - 1 + (localDow - 1), 7) + 1; - fieldValues.put(_jsJoda.ChronoField.DAY_OF_WEEK, _isoDow); - return null; - } - if (fieldValues.containsKey(_jsJoda.ChronoField.DAY_OF_WEEK) === false) { - return null; - } - - if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - if (fieldValues.containsKey(this._weekDef.weekOfWeekBasedYear()) === false) { - return null; - } - - var _isoDow2 = _jsJoda.ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.DAY_OF_WEEK)); - var _dow = MathUtil.floorMod(_isoDow2 - sow, 7) + 1; - var wby = this.range().checkValidIntValue(fieldValues.get(this), this); - var date = void 0; - var days = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - date = _jsJoda.LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); - var wowby = fieldValues.get(this._weekDef.weekOfWeekBasedYear()); - var dateDow = this._localizedDayOfWeek(date, sow); - var weeks = wowby - this._localizedWeekOfYear(date, dateDow); - days = weeks * 7 + (_dow - dateDow); - } else { - date = _jsJoda.LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); - var _wowby = this._weekDef.weekOfWeekBasedYear().range().checkValidIntValue(fieldValues.get(this._weekDef.weekOfWeekBasedYear()), this._weekDef.weekOfWeekBasedYear); - var _dateDow = this._localizedDayOfWeek(date, sow); - var _weeks = _wowby - this._localizedWeekOfYear(date, _dateDow); - days = _weeks * 7 + (_dow - _dateDow); - } - date = date.plus(days, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (date.getLong(this) !== fieldValues.get(this)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different year'); - } - } - fieldValues.remove(this); - fieldValues.remove(this._weekDef.weekOfWeekBasedYear()); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return date; - } - - if (fieldValues.containsKey(_jsJoda.ChronoField.YEAR) === false) { - return null; - } - var isoDow = _jsJoda.ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.DAY_OF_WEEK)); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var year = _jsJoda.ChronoField.YEAR.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.YEAR)); - - if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - if (fieldValues.containsKey(_jsJoda.ChronoField.MONTH_OF_YEAR) === false) { - return null; - } - var _value = fieldValues.remove(this); - var _date = void 0; - var _days = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - var month = fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR); - _date = _jsJoda.LocalDate.of(year, 1, 1); - _date = _date.plus(month - 1, _jsJoda.ChronoUnit.MONTHS); - var _dateDow2 = this._localizedDayOfWeek(_date, sow); - var _weeks2 = _value - this._localizedWeekOfMonth(_date, _dateDow2); - _days = _weeks2 * 7 + (dow - _dateDow2); - } else { - var _month = _jsJoda.ChronoField.MONTH_OF_YEAR.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR)); - _date = _jsJoda.LocalDate.of(year, _month, 8); - var _dateDow3 = this._localizedDayOfWeek(_date, sow); - var wom = this._range.checkValidIntValue(_value, this); - var _weeks3 = wom - this._localizedWeekOfMonth(_date, _dateDow3); - _days = _weeks3 * 7 + (dow - _dateDow3); - } - _date = _date.plus(_days, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (_date.getLong(_jsJoda.ChronoField.MONTH_OF_YEAR) !== fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different month'); - } - } - fieldValues.remove(this); - fieldValues.remove(_jsJoda.ChronoField.YEAR); - fieldValues.remove(_jsJoda.ChronoField.MONTH_OF_YEAR); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return _date; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - var _value2 = fieldValues.remove(this); - var _date2 = _jsJoda.LocalDate.of(year, 1, 1); - var _days2 = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - var _dateDow4 = this._localizedDayOfWeek(_date2, sow); - var _weeks4 = _value2 - this._localizedWeekOfYear(_date2, _dateDow4); - _days2 = _weeks4 * 7 + (dow - _dateDow4); - } else { - var _dateDow5 = this._localizedDayOfWeek(_date2, sow); - var woy = this._range.checkValidIntValue(_value2, this); - var _weeks5 = woy - this._localizedWeekOfYear(_date2, _dateDow5); - _days2 = _weeks5 * 7 + (dow - _dateDow5); - } - _date2 = _date2.plus(_days2, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (_date2.getLong(_jsJoda.ChronoField.YEAR) !== fieldValues.get(_jsJoda.ChronoField.YEAR)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different year'); - } - } - fieldValues.remove(this); - fieldValues.remove(_jsJoda.ChronoField.YEAR); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return _date2; - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - } - }, { - key: 'name', - value: function name() { - return this._name; - } - }, { - key: 'baseUnit', - value: function baseUnit() { - return this._baseUnit; - } - }, { - key: 'rangeUnit', - value: function rangeUnit() { - return this._rangeUnit; - } - }, { - key: 'range', - value: function range() { - return this._range; - } - }, { - key: 'isDateBased', - value: function isDateBased() { - return true; - } - }, { - key: 'isTimeBased', - value: function isTimeBased() { - return false; - } - }, { - key: 'isSupportedBy', - value: function isSupportedBy(temporal) { - if (temporal.isSupported(_jsJoda.ChronoField.DAY_OF_WEEK)) { - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return true; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - return temporal.isSupported(_jsJoda.ChronoField.DAY_OF_MONTH); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return temporal.isSupported(_jsJoda.ChronoField.DAY_OF_YEAR); - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return temporal.isSupported(_jsJoda.ChronoField.EPOCH_DAY); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return temporal.isSupported(_jsJoda.ChronoField.EPOCH_DAY); - } - } - return false; - } - }, { - key: 'rangeRefinedBy', - value: function rangeRefinedBy(temporal) { - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return this._range; - } - - var field = null; - if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - field = _jsJoda.ChronoField.DAY_OF_MONTH; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - field = _jsJoda.ChronoField.DAY_OF_YEAR; - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return this._rangeWOWBY(temporal); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return temporal.range(_jsJoda.ChronoField.YEAR); - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - - var offset = this._startOfWeekOffset(temporal.get(field), dow); - var fieldRange = temporal.range(field); - return _jsJoda.ValueRange.of(ComputedDayOfField._computeWeek(offset, fieldRange.minimum()), ComputedDayOfField._computeWeek(offset, fieldRange.maximum())); - } - }, { - key: '_rangeWOWBY', - value: function _rangeWOWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - return this._rangeWOWBY(_jsJoda.IsoChronology.INSTANCE.date(temporal).minus(2, _jsJoda.ChronoUnit.WEEKS)); - } - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return this._rangeWOWBY(_jsJoda.IsoChronology.INSTANCE.date(temporal).plus(2, _jsJoda.ChronoUnit.WEEKS)); - } - return _jsJoda.ValueRange.of(1, weekIndexOfFirstWeekNextYear - 1); - } - }, { - key: 'getDisplayName', - value: function getDisplayName(locale) { - requireNonNull(locale, 'locale'); - if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return 'Week'; - } - return this.toString(); - } - }, { - key: 'toString', - value: function toString() { - return this._name + '[' + this._weekDef.toString() + ']'; - } - }], [{ - key: '_computeWeek', - value: function _computeWeek(offset, day) { - return MathUtil.intDiv(7 + offset + (day - 1), 7); - } - }]); - - return ComputedDayOfField; -}(); - -var WeekFieldsCache = new Map(); - -var WeekFields = exports.WeekFields = function () { - _createClass(WeekFields, null, [{ - key: 'of', - value: function of(firstDayOrLocale, minDays) { - if (minDays === undefined) { - return WeekFields.ofLocale(firstDayOrLocale); - } else { - return WeekFields.ofFirstDayOfWeekMinDays(firstDayOrLocale, minDays); - } - } - }, { - key: 'ofLocale', - value: function ofLocale(locale) { - requireNonNull(locale, 'locale'); - - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/weekData.json')); - var cldr = new _cldrjs2.default(locale.localeString()); - var worldRegion = '001'; - var weekData = cldr.get('supplemental/weekData'); - var dow = _weekDayMap[weekData.firstDay[locale.country()]]; - if (!dow) { - dow = _weekDayMap[weekData.firstDay[worldRegion]]; - } - var minDays = weekData.minDays[locale.country()]; - if (!minDays) { - minDays = weekData.minDays[worldRegion]; - } - return WeekFields.ofFirstDayOfWeekMinDays(dow, minDays); - } - }, { - key: 'ofFirstDayOfWeekMinDays', - value: function ofFirstDayOfWeekMinDays(firstDayOfWeek, minimalDaysInFirstWeek) { - requireNonNull(firstDayOfWeek, 'firstDayOfWeek'); - requireInstance(firstDayOfWeek, _jsJoda.DayOfWeek, 'firstDayOfWeek'); - requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek'); - var key = firstDayOfWeek.toString() + minimalDaysInFirstWeek; - var rules = WeekFieldsCache.get(key); - if (rules == null) { - rules = new WeekFields(firstDayOfWeek, minimalDaysInFirstWeek); - WeekFieldsCache.set(key, rules); - rules = WeekFieldsCache.get(key); - } - return rules; - } - }]); - - function WeekFields(firstDayOfWeek, minimalDaysInFirstWeek) { - _classCallCheck(this, WeekFields); - - requireNonNull(firstDayOfWeek, 'firstDayOfWeek'); - requireInstance(firstDayOfWeek, _jsJoda.DayOfWeek, 'firstDayOfWeek'); - requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek'); - if (minimalDaysInFirstWeek < 1 || minimalDaysInFirstWeek > 7) { - throw new _jsJoda.IllegalArgumentException('Minimal number of days is invalid'); - } - this._firstDayOfWeek = firstDayOfWeek; - this._minimalDays = minimalDaysInFirstWeek; - this._dayOfWeek = ComputedDayOfField.ofDayOfWeekField(this); - this._weekOfMonth = ComputedDayOfField.ofWeekOfMonthField(this); - this._weekOfYear = ComputedDayOfField.ofWeekOfYearField(this); - this._weekOfWeekBasedYear = ComputedDayOfField.ofWeekOfWeekBasedYearField(this); - this._weekBasedYear = ComputedDayOfField.ofWeekBasedYearField(this); - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - } - - _createClass(WeekFields, [{ - key: 'firstDayOfWeek', - value: function firstDayOfWeek() { - return this._firstDayOfWeek; - } - }, { - key: 'minimalDaysInFirstWeek', - value: function minimalDaysInFirstWeek() { - return this._minimalDays; - } - }, { - key: 'dayOfWeek', - value: function dayOfWeek() { - return this._dayOfWeek; - } - }, { - key: 'weekOfMonth', - value: function weekOfMonth() { - return this._weekOfMonth; - } - }, { - key: 'weekOfYear', - value: function weekOfYear() { - return this._weekOfYear; - } - }, { - key: 'weekOfWeekBasedYear', - value: function weekOfWeekBasedYear() { - return this._weekOfWeekBasedYear; - } - }, { - key: 'weekBasedYear', - value: function weekBasedYear() { - return this._weekBasedYear; - } - }, { - key: 'equals', - value: function equals(object) { - if (this === object) { - return true; - } - if (object instanceof WeekFields) { - return this.hashCode() === object.hashCode(); - } - return false; - } - }, { - key: 'hashCode', - value: function hashCode() { - return this._firstDayOfWeek.ordinal() * 7 + this._minimalDays; - } - }, { - key: 'toString', - value: function toString() { - return 'WeekFields[' + this._firstDayOfWeek + ',' + this._minimalDays + ']'; - } - }]); - - return WeekFields; -}(); - -function _init() { - WeekFields.ISO = WeekFields.of(_jsJoda.DayOfWeek.MONDAY, 4); - - WeekFields.SUNDAY_START = WeekFields.of(_jsJoda.DayOfWeek.SUNDAY, 1); -} - -/***/ }), - -/***/ "./utils/load_cldrData.prebuilt.js": -/*!*****************************************!*\ - !*** ./utils/load_cldrData.prebuilt.js ***! - \*****************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -/* - * @copyright (c) 2018, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -/* since the npm cldrData load is using `fs` and other modules not available in browser, - * we define our own cldrData "load" function that just `requires` a cldr-data file - */ - -/* NOTE: the path is relative to the installed js-joda-locale package and assuming, - * that cldr-data is installed in parallel! - */ -module.exports = function (cldrPath) { - return __webpack_require__("./node_modules/cldr-data sync recursive ^\\.\\/.*$")("./" + cldrPath); -}; - - -/***/ }), - -/***/ "js-joda": -/*!*********************************************************************************************!*\ - !*** external {"amd":"js-joda","commonjs":"js-joda","commonjs2":"js-joda","root":"JSJoda"} ***! - \*********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports) { - -module.exports = __WEBPACK_EXTERNAL_MODULE_js_joda__; - -/***/ }) - -/******/ }); -}); \ No newline at end of file diff --git a/packages/deDE/dist/index.js.map b/packages/deDE/dist/index.js.map deleted file mode 100644 index b79c289..0000000 --- a/packages/deDE/dist/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack://JSJodaLocale/webpack/universalModuleDefinition","webpack://JSJodaLocale/webpack/bootstrap","webpack://JSJodaLocale/./node_modules/cldr-data sync ^\\.\\/.*$","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/event.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/supplemental.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/unresolved.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/node_main.js","webpack://JSJodaLocale/./src/Locale.js","webpack://JSJodaLocale/./src/_init.js","webpack://JSJodaLocale/./src/format/LocaleDateTimeFormatter.js","webpack://JSJodaLocale/./src/format/LocaleStore.js","webpack://JSJodaLocale/./src/format/cldr/CldrDateTimeFormatterBuilder.js","webpack://JSJodaLocale/./src/format/cldr/CldrDateTimeTextProvider.js","webpack://JSJodaLocale/./src/format/cldr/CldrZoneTextPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/LocalizedOffsetPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/TextPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/WeekFieldsPrinterParser.js","webpack://JSJodaLocale/./src/js-joda-locale.js","webpack://JSJodaLocale/./src/plug.js","webpack://JSJodaLocale/./src/temporal/WeekFields.js","webpack://JSJodaLocale/./utils/load_cldrData.prebuilt.js","webpack://JSJodaLocale/external {\"amd\":\"js-joda\",\"commonjs\":\"js-joda\",\"commonjs2\":\"js-joda\",\"root\":\"JSJoda\"}"],"names":["_init","Locale","getAvailableLocales","language","country","localeString","_language","_country","_localeString","length","other","ENGLISH","US","UK","CANADA","FRENCH","FRANCE","GERMAN","GERMANY","isInit","init","requireNonNull","assert","LocaleDateTimeFormatter","locale","equals","_locale","_printerParser","_decimalStyle","_resolverStyle","_resolverFields","_chrono","_zone","createEntry","text","field","key","value","toString","_comparator","obj1","obj2","LocaleStore","valueTextMap","_valueTextMap","map","allList","Object","keys","forEach","style","reverse","undefined","Number","parseInt","list","values","sort","concat","_parsable","Symbol","iterator","requireInstance","CldrDateTimeFormatterBuilder","styleOrMap","appendTextField","appendTextFieldStyle","appendTextFieldMap","FULL","textStyle","_appendInternal","textLookup","copy","assign","store","provider","getText","getTextIterator","count","SHORT","CldrDateTimeTextProvider","_cache","load","availableLocales","_findStore","_createStore","cldr","MONTH_OF_YEAR","monthsData","main","styleMap","data","wide","narrow","NARROW","abbreviated","_createLocaleStore","DAY_OF_WEEK","daysData","mon","tue","wed","thu","fri","sat","sun","AMPM_OF_DAY","dayPeriodsData","am","pm","ERA","erasData","eraNames","eraNarrow","eraAbbr","QUARTER_OF_YEAR","quartersData","FULL_STANDALONE","SHORT_STANDALONE","includes","NARROW_STANDALONE","LENGTH_COMPARATOR","str1","str2","cmp","localeCompare","CldrZoneTextPrinterParser","_textStyle","zoneId","type","mapZones","zoneData","metazoneInfo","get","metazone","metaZoneData","preferredZone","attributes","territory","_resolveZoneIdText","goldenZone","context","buf","zone","getValueQuery","normalized","append","id","daylight","hasDaylightSupport","tzType","tzstyle","asNormal","metaZone","mapZone","_other","_territory","_type","position","ids","getAvailableZoneIds","genericText","standardText","daylightText","sortedKeys","name","subSequenceEquals","setParsedZone","of","MathUtil","LocalizedOffsetPrinterParser","offsetSecs","getValue","OFFSET_SECONDS","OffsetIdPrinterParser","print","totalSecs","safeToInt","absHours","Math","abs","intMod","intDiv","absMinutes","absSeconds","parse","end","setParsedField","sign","charAt","negative","ch","hour","offset","min","sec","TextPrinterParser","_field","_provider","_numberPrinterParser","parseText","isStrict","it","entry","itText","_currentNumberPrinterParser","NumberPrinterParser","NORMAL","StringBuilder","WeekFieldsPrinterParser","letter","_letter","_count","weekFields","pp","_evaluate","dayOfWeek","NOT_NEGATIVE","weekOfWeekBasedYear","weekOfMonth","ReducedPrinterParser","weekBasedYear","BASE_DATE","EXCEEDS_PAD","sb","jsJoda","getOwnPropertyNames","prototype","prop","DateTimeFormatterBuilder","DateTimeFormatter","DAY_OF_WEEK_RANGE","WEEK_OF_MONTH_RANGE","WEEK_OF_YEAR_RANGE","WEEK_OF_WEEK_BASED_YEAR_RANGE","WEEK_BASED_YEAR_RANGE","YEAR","range","_weekDayMap","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY","ComputedDayOfField","weekDef","DAYS","WEEKS","MONTHS","YEARS","WEEK_BASED_YEARS","FOREVER","baseUnit","rangeUnit","_name","_weekDef","_baseUnit","_rangeUnit","_range","temporal","sow","firstDayOfWeek","dow","_localizedDayOfWeek","_localizedWeekOfMonth","_localizedWeekOfYear","_localizedWOWBY","_localizedWBY","isoDow","floorMod","dom","DAY_OF_MONTH","_startOfWeekOffset","_computeWeek","doy","DAY_OF_YEAR","woy","previous","from","minus","year","yearLen","isLeap","weekIndexOfFirstWeekNextYear","minimalDaysInFirstWeek","day","weekStart","newValue","newVal","checkValidIntValue","currentVal","baseWowby","diffWeeks","roundDown","result","plus","newWowby","delta","fieldValues","partialTemporal","resolverStyle","remove","localDow","put","containsKey","wby","date","days","LENIENT","wowby","dateDow","weeks","STRICT","getLong","month","wom","isSupported","EPOCH_DAY","_rangeWOWBY","fieldRange","minimum","maximum","INSTANCE","WeekFieldsCache","Map","WeekFields","firstDayOrLocale","minDays","ofLocale","ofFirstDayOfWeekMinDays","worldRegion","weekData","firstDay","rules","set","_firstDayOfWeek","_minimalDays","_dayOfWeek","ofDayOfWeekField","_weekOfMonth","ofWeekOfMonthField","_weekOfYear","ofWeekOfYearField","_weekOfWeekBasedYear","ofWeekOfWeekBasedYearField","_weekBasedYear","ofWeekBasedYearField","object","hashCode","ordinal","ISO","SUNDAY_START"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;ACVA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;;AAGA;AACA;;;;;;;;;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;;AAGD;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;;AAE9B,cAAc,UAAU;AACxB,yBAAyB,UAAU;AACnC,2BAA2B,IAAI,IAAI;AACnC;AACA,GAAG;;AAEH;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,qCAAqC,YAAY;AACjD;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,+CAA+C;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,IAAI,kBAAkB,IAAI;AACxE,2CAA2C,IAAI,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,oBAAoB,IAAI,kBAAkB,EAAE;AACnI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,qCAAqC,YAAY;AACjD;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA,GAAG;AACH;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;AAEA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2G,OAAO;AAClH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA,YAAY,KAAK,aAAa,EAAE,GAAG,KAAK,aAAa,EAAE;AACvD,QAAQ,KAAK,mBAAmB;AAChC;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA,CAAC;;;AAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,qDAAqD,IAAI,GAAG,IAAI;AAChE,cAAc,kBAAkB;;AAEhC,mDAAmD,IAAI,GAAG,IAAI;AAC9D;;AAEA,eAAe,iBAAiB;AAChC;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,2DAA2D,cAAc;AACzE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gFAAgF,IAAI,SAAS,EAAE,SAAS,IAAI;;AAE5G;;AAEA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA,4BAA4B,OAAO;AACnC;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACzqBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,YAAY,WAAW;AACvB,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,kBAAkB;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,SAAS;AACrB,aAAa,WAAW;AACxB;AACA;AACA;AACA;;AAEA,aAAa,sBAAsB;AACnC;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,OAAO;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,MAAM;AAClB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,KAAK;AACjB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY,EAAE;AACd,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA,2CAA2C;AAC3C;;AAEA;AACA,wBAAwB,mBAAmB;AAC3C;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC;AACD;;;;AAIA;AACA;AACA;;;;;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACxkBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;;;;AAIA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,qDAAqD,UAAU;AAC/D;AACA;;AAEA;AACA,2DAA2D,UAAU;AACrE;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,4CAA4C,UAAU;AACtD;AACA;;AAEA;AACA,4CAA4C,UAAU;AACtD;AACA;;AAEA;;AAEA;;;;;AAKA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACpGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;AAEA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,+DAA+D,iBAAiB;AAChF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,CAAC;;;AAGD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACnKD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"js-joda\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"js-joda\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"JSJodaLocale\"] = factory(require(\"js-joda\"));\n\telse\n\t\troot[\"JSJodaLocale\"] = factory(root[\"JSJoda\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_js_joda__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/js-joda-locale.js\");\n","var map = {\n\t\"./availableLocales.json\": \"./node_modules/cldr-data/availableLocales.json\",\n\t\"./main/de/ca-gregorian.json\": \"./node_modules/cldr-data/main/de/ca-gregorian.json\",\n\t\"./main/de/timeZoneNames.json\": \"./node_modules/cldr-data/main/de/timeZoneNames.json\",\n\t\"./supplemental/likelySubtags.json\": \"./node_modules/cldr-data/supplemental/likelySubtags.json\",\n\t\"./supplemental/metaZones.json\": \"./node_modules/cldr-data/supplemental/metaZones.json\",\n\t\"./supplemental/weekData.json\": \"./node_modules/cldr-data/supplemental/weekData.json\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\tvar module = __webpack_require__(id);\n\treturn module;\n}\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) { // check for number or string\n\t\tvar e = new Error('Cannot find module \"' + req + '\".');\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn id;\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/cldr-data sync recursive ^\\\\.\\\\/.*$\";","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( root, factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory();\n\t} else {\n\t\t// Global\n\t\troot.Cldr = factory();\n\t}\n\n}( this, function() {\n\n\n\tvar arrayIsArray = Array.isArray || function( obj ) {\n\t\treturn Object.prototype.toString.call( obj ) === \"[object Array]\";\n\t};\n\n\n\n\n\tvar pathNormalize = function( path, attributes ) {\n\t\tif ( arrayIsArray( path ) ) {\n\t\t\tpath = path.join( \"/\" );\n\t\t}\n\t\tif ( typeof path !== \"string\" ) {\n\t\t\tthrow new Error( \"invalid path \\\"\" + path + \"\\\"\" );\n\t\t}\n\t\t// 1: Ignore leading slash `/`\n\t\t// 2: Ignore leading `cldr/`\n\t\tpath = path\n\t\t\t.replace( /^\\// , \"\" ) /* 1 */\n\t\t\t.replace( /^cldr\\// , \"\" ); /* 2 */\n\n\t\t// Replace {attribute}'s\n\t\tpath = path.replace( /{[a-zA-Z]+}/g, function( name ) {\n\t\t\tname = name.replace( /^{([^}]*)}$/, \"$1\" );\n\t\t\treturn attributes[ name ];\n\t\t});\n\n\t\treturn path.split( \"/\" );\n\t};\n\n\n\n\n\tvar arraySome = function( array, callback ) {\n\t\tvar i, length;\n\t\tif ( array.some ) {\n\t\t\treturn array.some( callback );\n\t\t}\n\t\tfor ( i = 0, length = array.length; i < length; i++ ) {\n\t\t\tif ( callback( array[ i ], i, array ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\n\n\n\t/**\n\t * Return the maximized language id as defined in\n\t * http://www.unicode.org/reports/tr35/#Likely_Subtags\n\t * 1. Canonicalize.\n\t * 1.1 Make sure the input locale is in canonical form: uses the right\n\t * separator, and has the right casing.\n\t * TODO Right casing? What df? It seems languages are lowercase, scripts are\n\t * Capitalized, territory is uppercase. I am leaving this as an exercise to\n\t * the user.\n\t *\n\t * 1.2 Replace any deprecated subtags with their canonical values using the\n\t * data in supplemental metadata. Use the first value in the\n\t * replacement list, if it exists. Language tag replacements may have multiple\n\t * parts, such as \"sh\" ➞ \"sr_Latn\" or mo\" ➞ \"ro_MD\". In such a case, the\n\t * original script and/or region are retained if there is one. Thus\n\t * \"sh_Arab_AQ\" ➞ \"sr_Arab_AQ\", not \"sr_Latn_AQ\".\n\t * TODO What data?\n\t *\n\t * 1.3 If the tag is grandfathered (see in the supplemental data), then return it.\n\t * TODO grandfathered?\n\t *\n\t * 1.4 Remove the script code 'Zzzz' and the region code 'ZZ' if they occur.\n\t * 1.5 Get the components of the cleaned-up source tag (languages, scripts,\n\t * and regions), plus any variants and extensions.\n\t * 2. Lookup. Lookup each of the following in order, and stop on the first\n\t * match:\n\t * 2.1 languages_scripts_regions\n\t * 2.2 languages_regions\n\t * 2.3 languages_scripts\n\t * 2.4 languages\n\t * 2.5 und_scripts\n\t * 3. Return\n\t * 3.1 If there is no match, either return an error value, or the match for\n\t * \"und\" (in APIs where a valid language tag is required).\n\t * 3.2 Otherwise there is a match = languagem_scriptm_regionm\n\t * 3.3 Let xr = xs if xs is not empty, and xm otherwise.\n\t * 3.4 Return the language tag composed of languager _ scriptr _ regionr +\n\t * variants + extensions.\n\t *\n\t * @subtags [Array] normalized language id subtags tuple (see init.js).\n\t */\n\tvar coreLikelySubtags = function( Cldr, cldr, subtags, options ) {\n\t\tvar match, matchFound,\n\t\t\tlanguage = subtags[ 0 ],\n\t\t\tscript = subtags[ 1 ],\n\t\t\tsep = Cldr.localeSep,\n\t\t\tterritory = subtags[ 2 ],\n\t\t\tvariants = subtags.slice( 3, 4 );\n\t\toptions = options || {};\n\n\t\t// Skip if (language, script, territory) is not empty [3.3]\n\t\tif ( language !== \"und\" && script !== \"Zzzz\" && territory !== \"ZZ\" ) {\n\t\t\treturn [ language, script, territory ].concat( variants );\n\t\t}\n\n\t\t// Skip if no supplemental likelySubtags data is present\n\t\tif ( typeof cldr.get( \"supplemental/likelySubtags\" ) === \"undefined\" ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// [2]\n\t\tmatchFound = arraySome([\n\t\t\t[ language, script, territory ],\n\t\t\t[ language, territory ],\n\t\t\t[ language, script ],\n\t\t\t[ language ],\n\t\t\t[ \"und\", script ]\n\t\t], function( test ) {\n\t\t\treturn match = !(/\\b(Zzzz|ZZ)\\b/).test( test.join( sep ) ) /* [1.4] */ && cldr.get( [ \"supplemental/likelySubtags\", test.join( sep ) ] );\n\t\t});\n\n\t\t// [3]\n\t\tif ( matchFound ) {\n\t\t\t// [3.2 .. 3.4]\n\t\t\tmatch = match.split( sep );\n\t\t\treturn [\n\t\t\t\tlanguage !== \"und\" ? language : match[ 0 ],\n\t\t\t\tscript !== \"Zzzz\" ? script : match[ 1 ],\n\t\t\t\tterritory !== \"ZZ\" ? territory : match[ 2 ]\n\t\t\t].concat( variants );\n\t\t} else if ( options.force ) {\n\t\t\t// [3.1.2]\n\t\t\treturn cldr.get( \"supplemental/likelySubtags/und\" ).split( sep );\n\t\t} else {\n\t\t\t// [3.1.1]\n\t\t\treturn;\n\t\t}\n\t};\n\n\n\n\t/**\n\t * Given a locale, remove any fields that Add Likely Subtags would add.\n\t * http://www.unicode.org/reports/tr35/#Likely_Subtags\n\t * 1. First get max = AddLikelySubtags(inputLocale). If an error is signaled,\n\t * return it.\n\t * 2. Remove the variants from max.\n\t * 3. Then for trial in {language, language _ region, language _ script}. If\n\t * AddLikelySubtags(trial) = max, then return trial + variants.\n\t * 4. If you do not get a match, return max + variants.\n\t * \n\t * @maxLanguageId [Array] maxLanguageId tuple (see init.js).\n\t */\n\tvar coreRemoveLikelySubtags = function( Cldr, cldr, maxLanguageId ) {\n\t\tvar match, matchFound,\n\t\t\tlanguage = maxLanguageId[ 0 ],\n\t\t\tscript = maxLanguageId[ 1 ],\n\t\t\tterritory = maxLanguageId[ 2 ],\n\t\t\tvariants = maxLanguageId[ 3 ];\n\n\t\t// [3]\n\t\tmatchFound = arraySome([\n\t\t\t[ [ language, \"Zzzz\", \"ZZ\" ], [ language ] ],\n\t\t\t[ [ language, \"Zzzz\", territory ], [ language, territory ] ],\n\t\t\t[ [ language, script, \"ZZ\" ], [ language, script ] ]\n\t\t], function( test ) {\n\t\t\tvar result = coreLikelySubtags( Cldr, cldr, test[ 0 ] );\n\t\t\tmatch = test[ 1 ];\n\t\t\treturn result && result[ 0 ] === maxLanguageId[ 0 ] &&\n\t\t\t\tresult[ 1 ] === maxLanguageId[ 1 ] &&\n\t\t\t\tresult[ 2 ] === maxLanguageId[ 2 ];\n\t\t});\n\n\t\tif ( matchFound ) {\n\t\t\tif ( variants ) {\n\t\t\t\tmatch.push( variants );\n\t\t\t}\n\t\t\treturn match;\n\t\t}\n\n\t\t// [4]\n\t\treturn maxLanguageId;\n\t};\n\n\n\n\n\t/**\n\t * subtags( locale )\n\t *\n\t * @locale [String]\n\t */\n\tvar coreSubtags = function( locale ) {\n\t\tvar aux, unicodeLanguageId,\n\t\t\tsubtags = [];\n\n\t\tlocale = locale.replace( /_/, \"-\" );\n\n\t\t// Unicode locale extensions.\n\t\taux = locale.split( \"-u-\" );\n\t\tif ( aux[ 1 ] ) {\n\t\t\taux[ 1 ] = aux[ 1 ].split( \"-t-\" );\n\t\t\tlocale = aux[ 0 ] + ( aux[ 1 ][ 1 ] ? \"-t-\" + aux[ 1 ][ 1 ] : \"\");\n\t\t\tsubtags[ 4 /* unicodeLocaleExtensions */ ] = aux[ 1 ][ 0 ];\n\t\t}\n\n\t\t// TODO normalize transformed extensions. Currently, skipped.\n\t\t// subtags[ x ] = locale.split( \"-t-\" )[ 1 ];\n\t\tunicodeLanguageId = locale.split( \"-t-\" )[ 0 ];\n\n\t\t// unicode_language_id = \"root\"\n\t\t// | unicode_language_subtag \n\t\t// (sep unicode_script_subtag)? \n\t\t// (sep unicode_region_subtag)?\n\t\t// (sep unicode_variant_subtag)* ;\n\t\t//\n\t\t// Although unicode_language_subtag = alpha{2,8}, I'm using alpha{2,3}. Because, there's no language on CLDR lengthier than 3.\n\t\taux = unicodeLanguageId.match( /^(([a-z]{2,3})(-([A-Z][a-z]{3}))?(-([A-Z]{2}|[0-9]{3}))?)((-([a-zA-Z0-9]{5,8}|[0-9][a-zA-Z0-9]{3}))*)$|^(root)$/ );\n\t\tif ( aux === null ) {\n\t\t\treturn [ \"und\", \"Zzzz\", \"ZZ\" ];\n\t\t}\n\t\tsubtags[ 0 /* language */ ] = aux[ 10 ] /* root */ || aux[ 2 ] || \"und\";\n\t\tsubtags[ 1 /* script */ ] = aux[ 4 ] || \"Zzzz\";\n\t\tsubtags[ 2 /* territory */ ] = aux[ 6 ] || \"ZZ\";\n\t\tif ( aux[ 7 ] && aux[ 7 ].length ) {\n\t\t\tsubtags[ 3 /* variant */ ] = aux[ 7 ].slice( 1 ) /* remove leading \"-\" */;\n\t\t}\n\n\t\t// 0: language\n\t\t// 1: script\n\t\t// 2: territory (aka region)\n\t\t// 3: variant\n\t\t// 4: unicodeLocaleExtensions\n\t\treturn subtags;\n\t};\n\n\n\n\n\tvar arrayForEach = function( array, callback ) {\n\t\tvar i, length;\n\t\tif ( array.forEach ) {\n\t\t\treturn array.forEach( callback );\n\t\t}\n\t\tfor ( i = 0, length = array.length; i < length; i++ ) {\n\t\t\tcallback( array[ i ], i, array );\n\t\t}\n\t};\n\n\n\n\n\t/**\n\t * bundleLookup( minLanguageId )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @cldr [Cldr instance]\n\t *\n\t * @minLanguageId [String] requested languageId after applied remove likely subtags.\n\t */\n\tvar bundleLookup = function( Cldr, cldr, minLanguageId ) {\n\t\tvar availableBundleMap = Cldr._availableBundleMap,\n\t\t\tavailableBundleMapQueue = Cldr._availableBundleMapQueue;\n\n\t\tif ( availableBundleMapQueue.length ) {\n\t\t\tarrayForEach( availableBundleMapQueue, function( bundle ) {\n\t\t\t\tvar existing, maxBundle, minBundle, subtags;\n\t\t\t\tsubtags = coreSubtags( bundle );\n\t\t\t\tmaxBundle = coreLikelySubtags( Cldr, cldr, subtags );\n\t\t\t\tminBundle = coreRemoveLikelySubtags( Cldr, cldr, maxBundle );\n\t\t\t\tminBundle = minBundle.join( Cldr.localeSep );\n\t\t\t\texisting = availableBundleMapQueue[ minBundle ];\n\t\t\t\tif ( existing && existing.length < bundle.length ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tavailableBundleMap[ minBundle ] = bundle;\n\t\t\t});\n\t\t\tCldr._availableBundleMapQueue = [];\n\t\t}\n\n\t\treturn availableBundleMap[ minLanguageId ] || null;\n\t};\n\n\n\n\n\tvar objectKeys = function( object ) {\n\t\tvar i,\n\t\t\tresult = [];\n\n\t\tif ( Object.keys ) {\n\t\t\treturn Object.keys( object );\n\t\t}\n\n\t\tfor ( i in object ) {\n\t\t\tresult.push( i );\n\t\t}\n\n\t\treturn result;\n\t};\n\n\n\n\n\tvar createError = function( code, attributes ) {\n\t\tvar error, message;\n\n\t\tmessage = code + ( attributes && JSON ? \": \" + JSON.stringify( attributes ) : \"\" );\n\t\terror = new Error( message );\n\t\terror.code = code;\n\n\t\t// extend( error, attributes );\n\t\tarrayForEach( objectKeys( attributes ), function( attribute ) {\n\t\t\terror[ attribute ] = attributes[ attribute ];\n\t\t});\n\n\t\treturn error;\n\t};\n\n\n\n\n\tvar validate = function( code, check, attributes ) {\n\t\tif ( !check ) {\n\t\t\tthrow createError( code, attributes );\n\t\t}\n\t};\n\n\n\n\n\tvar validatePresence = function( value, name ) {\n\t\tvalidate( \"E_MISSING_PARAMETER\", typeof value !== \"undefined\", {\n\t\t\tname: name\n\t\t});\n\t};\n\n\n\n\n\tvar validateType = function( value, name, check, expected ) {\n\t\tvalidate( \"E_INVALID_PAR_TYPE\", check, {\n\t\t\texpected: expected,\n\t\t\tname: name,\n\t\t\tvalue: value\n\t\t});\n\t};\n\n\n\n\n\tvar validateTypePath = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\" || arrayIsArray( value ), \"String or Array\" );\n\t};\n\n\n\n\n\t/**\n\t * Function inspired by jQuery Core, but reduced to our use case.\n\t */\n\tvar isPlainObject = function( obj ) {\n\t\treturn obj !== null && \"\" + obj === \"[object Object]\";\n\t};\n\n\n\n\n\tvar validateTypePlainObject = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"undefined\" || isPlainObject( value ), \"Plain Object\" );\n\t};\n\n\n\n\n\tvar validateTypeString = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\", \"a string\" );\n\t};\n\n\n\n\n\t// @path: normalized path\n\tvar resourceGet = function( data, path ) {\n\t\tvar i,\n\t\t\tnode = data,\n\t\t\tlength = path.length;\n\n\t\tfor ( i = 0; i < length - 1; i++ ) {\n\t\t\tnode = node[ path[ i ] ];\n\t\t\tif ( !node ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t}\n\t\treturn node[ path[ i ] ];\n\t};\n\n\n\n\n\t/**\n\t * setAvailableBundles( Cldr, json )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @json resolved/unresolved cldr data.\n\t *\n\t * Set available bundles queue based on passed json CLDR data. Considers a bundle as any String at /main/{bundle}.\n\t */\n\tvar coreSetAvailableBundles = function( Cldr, json ) {\n\t\tvar bundle,\n\t\t\tavailableBundleMapQueue = Cldr._availableBundleMapQueue,\n\t\t\tmain = resourceGet( json, [ \"main\" ] );\n\n\t\tif ( main ) {\n\t\t\tfor ( bundle in main ) {\n\t\t\t\tif ( main.hasOwnProperty( bundle ) && bundle !== \"root\" &&\n\t\t\t\t\t\t\tavailableBundleMapQueue.indexOf( bundle ) === -1 ) {\n\t\t\t\t\tavailableBundleMapQueue.push( bundle );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\n\n\tvar alwaysArray = function( somethingOrArray ) {\n\t\treturn arrayIsArray( somethingOrArray ) ? somethingOrArray : [ somethingOrArray ];\n\t};\n\n\n\tvar jsonMerge = (function() {\n\n\t// Returns new deeply merged JSON.\n\t//\n\t// Eg.\n\t// merge( { a: { b: 1, c: 2 } }, { a: { b: 3, d: 4 } } )\n\t// -> { a: { b: 3, c: 2, d: 4 } }\n\t//\n\t// @arguments JSON's\n\t// \n\tvar merge = function() {\n\t\tvar destination = {},\n\t\t\tsources = [].slice.call( arguments, 0 );\n\t\tarrayForEach( sources, function( source ) {\n\t\t\tvar prop;\n\t\t\tfor ( prop in source ) {\n\t\t\t\tif ( prop in destination && typeof destination[ prop ] === \"object\" && !arrayIsArray( destination[ prop ] ) ) {\n\n\t\t\t\t\t// Merge Objects\n\t\t\t\t\tdestination[ prop ] = merge( destination[ prop ], source[ prop ] );\n\n\t\t\t\t} else {\n\n\t\t\t\t\t// Set new values\n\t\t\t\t\tdestination[ prop ] = source[ prop ];\n\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\treturn destination;\n\t};\n\n\treturn merge;\n\n}());\n\n\n\t/**\n\t * load( Cldr, source, jsons )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @source [Object]\n\t *\n\t * @jsons [arguments]\n\t */\n\tvar coreLoad = function( Cldr, source, jsons ) {\n\t\tvar i, j, json;\n\n\t\tvalidatePresence( jsons[ 0 ], \"json\" );\n\n\t\t// Support arbitrary parameters, e.g., `Cldr.load({...}, {...})`.\n\t\tfor ( i = 0; i < jsons.length; i++ ) {\n\n\t\t\t// Support array parameters, e.g., `Cldr.load([{...}, {...}])`.\n\t\t\tjson = alwaysArray( jsons[ i ] );\n\n\t\t\tfor ( j = 0; j < json.length; j++ ) {\n\t\t\t\tvalidateTypePlainObject( json[ j ], \"json\" );\n\t\t\t\tsource = jsonMerge( source, json[ j ] );\n\t\t\t\tcoreSetAvailableBundles( Cldr, json[ j ] );\n\t\t\t}\n\t\t}\n\n\t\treturn source;\n\t};\n\n\n\n\tvar itemGetResolved = function( Cldr, path, attributes ) {\n\t\t// Resolve path\n\t\tvar normalizedPath = pathNormalize( path, attributes );\n\n\t\treturn resourceGet( Cldr._resolved, normalizedPath );\n\t};\n\n\n\n\n\t/**\n\t * new Cldr()\n\t */\n\tvar Cldr = function( locale ) {\n\t\tthis.init( locale );\n\t};\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tCldr._alwaysArray = alwaysArray;\n\tCldr._coreLoad = coreLoad;\n\tCldr._createError = createError;\n\tCldr._itemGetResolved = itemGetResolved;\n\tCldr._jsonMerge = jsonMerge;\n\tCldr._pathNormalize = pathNormalize;\n\tCldr._resourceGet = resourceGet;\n\tCldr._validatePresence = validatePresence;\n\tCldr._validateType = validateType;\n\tCldr._validateTypePath = validateTypePath;\n\tCldr._validateTypePlainObject = validateTypePlainObject;\n\n\tCldr._availableBundleMap = {};\n\tCldr._availableBundleMapQueue = [];\n\tCldr._resolved = {};\n\n\t// Allow user to override locale separator \"-\" (default) | \"_\". According to http://www.unicode.org/reports/tr35/#Unicode_language_identifier, both \"-\" and \"_\" are valid locale separators (eg. \"en_GB\", \"en-GB\"). According to http://unicode.org/cldr/trac/ticket/6786 its usage must be consistent throughout the data set.\n\tCldr.localeSep = \"-\";\n\n\t/**\n\t * Cldr.load( json [, json, ...] )\n\t *\n\t * @json [JSON] CLDR data or [Array] Array of @json's.\n\t *\n\t * Load resolved cldr data.\n\t */\n\tCldr.load = function() {\n\t\tCldr._resolved = coreLoad( Cldr, Cldr._resolved, arguments );\n\t};\n\n\t/**\n\t * .init() automatically run on instantiation/construction.\n\t */\n\tCldr.prototype.init = function( locale ) {\n\t\tvar attributes, language, maxLanguageId, minLanguageId, script, subtags, territory, unicodeLocaleExtensions, variant,\n\t\t\tsep = Cldr.localeSep,\n\t\t\tunicodeLocaleExtensionsRaw = \"\";\n\n\t\tvalidatePresence( locale, \"locale\" );\n\t\tvalidateTypeString( locale, \"locale\" );\n\n\t\tsubtags = coreSubtags( locale );\n\n\t\tif ( subtags.length === 5 ) {\n\t\t\tunicodeLocaleExtensions = subtags.pop();\n\t\t\tunicodeLocaleExtensionsRaw = sep + \"u\" + sep + unicodeLocaleExtensions;\n\t\t\t// Remove trailing null when there is unicodeLocaleExtensions but no variants.\n\t\t\tif ( !subtags[ 3 ] ) {\n\t\t\t\tsubtags.pop();\n\t\t\t}\n\t\t}\n\t\tvariant = subtags[ 3 ];\n\n\t\t// Normalize locale code.\n\t\t// Get (or deduce) the \"triple subtags\": language, territory (also aliased as region), and script subtags.\n\t\t// Get the variant subtags (calendar, collation, currency, etc).\n\t\t// refs:\n\t\t// - http://www.unicode.org/reports/tr35/#Field_Definitions\n\t\t// - http://www.unicode.org/reports/tr35/#Language_and_Locale_IDs\n\t\t// - http://www.unicode.org/reports/tr35/#Unicode_locale_identifier\n\n\t\t// When a locale id does not specify a language, or territory (region), or script, they are obtained by Likely Subtags.\n\t\tmaxLanguageId = coreLikelySubtags( Cldr, this, subtags, { force: true } ) || subtags;\n\t\tlanguage = maxLanguageId[ 0 ];\n\t\tscript = maxLanguageId[ 1 ];\n\t\tterritory = maxLanguageId[ 2 ];\n\n\t\tminLanguageId = coreRemoveLikelySubtags( Cldr, this, maxLanguageId ).join( sep );\n\n\t\t// Set attributes\n\t\tthis.attributes = attributes = {\n\t\t\tbundle: bundleLookup( Cldr, this, minLanguageId ),\n\n\t\t\t// Unicode Language Id\n\t\t\tminLanguageId: minLanguageId + unicodeLocaleExtensionsRaw,\n\t\t\tmaxLanguageId: maxLanguageId.join( sep ) + unicodeLocaleExtensionsRaw,\n\n\t\t\t// Unicode Language Id Subtabs\n\t\t\tlanguage: language,\n\t\t\tscript: script,\n\t\t\tterritory: territory,\n\t\t\tregion: territory, /* alias */\n\t\t\tvariant: variant\n\t\t};\n\n\t\t// Unicode locale extensions.\n\t\tunicodeLocaleExtensions && ( \"-\" + unicodeLocaleExtensions ).replace( /-[a-z]{3,8}|(-[a-z]{2})-([a-z]{3,8})/g, function( attribute, key, type ) {\n\n\t\t\tif ( key ) {\n\n\t\t\t\t// Extension is in the `keyword` form.\n\t\t\t\tattributes[ \"u\" + key ] = type;\n\t\t\t} else {\n\n\t\t\t\t// Extension is in the `attribute` form.\n\t\t\t\tattributes[ \"u\" + attribute ] = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.locale = locale;\n\t};\n\n\t/**\n\t * .get()\n\t */\n\tCldr.prototype.get = function( path ) {\n\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\treturn itemGetResolved( Cldr, path, this.attributes );\n\t};\n\n\t/**\n\t * .main()\n\t */\n\tCldr.prototype.main = function( path ) {\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\tvalidate( \"E_MISSING_BUNDLE\", this.attributes.bundle !== null, {\n\t\t\tlocale: this.locale\n\t\t});\n\n\t\tpath = alwaysArray( path );\n\t\treturn this.get( [ \"main/{bundle}\" ].concat( path ) );\n\t};\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar pathNormalize = Cldr._pathNormalize,\n\t\tvalidatePresence = Cldr._validatePresence,\n\t\tvalidateType = Cldr._validateType;\n\n/*!\n * EventEmitter v4.2.7 - git.io/ee\n * Oliver Caldwell\n * MIT license\n * @preserve\n */\n\nvar EventEmitter;\n/* jshint ignore:start */\nEventEmitter = (function () {\n\n\n\t/**\n\t * Class for managing events.\n\t * Can be extended to provide event functionality in other classes.\n\t *\n\t * @class EventEmitter Manages event registering and emitting.\n\t */\n\tfunction EventEmitter() {}\n\n\t// Shortcuts to improve speed and size\n\tvar proto = EventEmitter.prototype;\n\tvar exports = {};\n\t\n\n\t/**\n\t * Finds the index of the listener for the event in it's storage array.\n\t *\n\t * @param {Function[]} listeners Array of listeners to search through.\n\t * @param {Function} listener Method to look for.\n\t * @return {Number} Index of the specified listener, -1 if not found\n\t * @api private\n\t */\n\tfunction indexOfListener(listeners, listener) {\n\t\tvar i = listeners.length;\n\t\twhile (i--) {\n\t\t\tif (listeners[i].listener === listener) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\n\t\treturn -1;\n\t}\n\n\t/**\n\t * Alias a method while keeping the context correct, to allow for overwriting of target method.\n\t *\n\t * @param {String} name The name of the target method.\n\t * @return {Function} The aliased method\n\t * @api private\n\t */\n\tfunction alias(name) {\n\t\treturn function aliasClosure() {\n\t\t\treturn this[name].apply(this, arguments);\n\t\t};\n\t}\n\n\t/**\n\t * Returns the listener array for the specified event.\n\t * Will initialise the event object and listener arrays if required.\n\t * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them.\n\t * Each property in the object response is an array of listener functions.\n\t *\n\t * @param {String|RegExp} evt Name of the event to return the listeners from.\n\t * @return {Function[]|Object} All listener functions for the event.\n\t */\n\tproto.getListeners = function getListeners(evt) {\n\t\tvar events = this._getEvents();\n\t\tvar response;\n\t\tvar key;\n\n\t\t// Return a concatenated array of all matching events if\n\t\t// the selector is a regular expression.\n\t\tif (evt instanceof RegExp) {\n\t\t\tresponse = {};\n\t\t\tfor (key in events) {\n\t\t\t\tif (events.hasOwnProperty(key) && evt.test(key)) {\n\t\t\t\t\tresponse[key] = events[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tresponse = events[evt] || (events[evt] = []);\n\t\t}\n\n\t\treturn response;\n\t};\n\n\t/**\n\t * Takes a list of listener objects and flattens it into a list of listener functions.\n\t *\n\t * @param {Object[]} listeners Raw listener objects.\n\t * @return {Function[]} Just the listener functions.\n\t */\n\tproto.flattenListeners = function flattenListeners(listeners) {\n\t\tvar flatListeners = [];\n\t\tvar i;\n\n\t\tfor (i = 0; i < listeners.length; i += 1) {\n\t\t\tflatListeners.push(listeners[i].listener);\n\t\t}\n\n\t\treturn flatListeners;\n\t};\n\n\t/**\n\t * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful.\n\t *\n\t * @param {String|RegExp} evt Name of the event to return the listeners from.\n\t * @return {Object} All listener functions for an event in an object.\n\t */\n\tproto.getListenersAsObject = function getListenersAsObject(evt) {\n\t\tvar listeners = this.getListeners(evt);\n\t\tvar response;\n\n\t\tif (listeners instanceof Array) {\n\t\t\tresponse = {};\n\t\t\tresponse[evt] = listeners;\n\t\t}\n\n\t\treturn response || listeners;\n\t};\n\n\t/**\n\t * Adds a listener function to the specified event.\n\t * The listener will not be added if it is a duplicate.\n\t * If the listener returns true then it will be removed after it is called.\n\t * If you pass a regular expression as the event name then the listener will be added to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to attach the listener to.\n\t * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addListener = function addListener(evt, listener) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar listenerIsWrapped = typeof listener === 'object';\n\t\tvar key;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) {\n\t\t\t\tlisteners[key].push(listenerIsWrapped ? listener : {\n\t\t\t\t\tlistener: listener,\n\t\t\t\t\tonce: false\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of addListener\n\t */\n\tproto.on = alias('addListener');\n\n\t/**\n\t * Semi-alias of addListener. It will add a listener that will be\n\t * automatically removed after it's first execution.\n\t *\n\t * @param {String|RegExp} evt Name of the event to attach the listener to.\n\t * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addOnceListener = function addOnceListener(evt, listener) {\n\t\treturn this.addListener(evt, {\n\t\t\tlistener: listener,\n\t\t\tonce: true\n\t\t});\n\t};\n\n\t/**\n\t * Alias of addOnceListener.\n\t */\n\tproto.once = alias('addOnceListener');\n\n\t/**\n\t * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad.\n\t * You need to tell it what event names should be matched by a regex.\n\t *\n\t * @param {String} evt Name of the event to create.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.defineEvent = function defineEvent(evt) {\n\t\tthis.getListeners(evt);\n\t\treturn this;\n\t};\n\n\t/**\n\t * Uses defineEvent to define multiple events.\n\t *\n\t * @param {String[]} evts An array of event names to define.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.defineEvents = function defineEvents(evts) {\n\t\tfor (var i = 0; i < evts.length; i += 1) {\n\t\t\tthis.defineEvent(evts[i]);\n\t\t}\n\t\treturn this;\n\t};\n\n\t/**\n\t * Removes a listener function from the specified event.\n\t * When passed a regular expression as the event name, it will remove the listener from all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to remove the listener from.\n\t * @param {Function} listener Method to remove from the event.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeListener = function removeListener(evt, listener) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar index;\n\t\tvar key;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key)) {\n\t\t\t\tindex = indexOfListener(listeners[key], listener);\n\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tlisteners[key].splice(index, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of removeListener\n\t */\n\tproto.off = alias('removeListener');\n\n\t/**\n\t * Adds listeners in bulk using the manipulateListeners method.\n\t * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added.\n\t * You can also pass it a regular expression to add the array of listeners to all events that match it.\n\t * Yeah, this function does quite a bit. That's probably a bad thing.\n\t *\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to add.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addListeners = function addListeners(evt, listeners) {\n\t\t// Pass through to manipulateListeners\n\t\treturn this.manipulateListeners(false, evt, listeners);\n\t};\n\n\t/**\n\t * Removes listeners in bulk using the manipulateListeners method.\n\t * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n\t * You can also pass it an event name and an array of listeners to be removed.\n\t * You can also pass it a regular expression to remove the listeners from all events that match it.\n\t *\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to remove.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeListeners = function removeListeners(evt, listeners) {\n\t\t// Pass through to manipulateListeners\n\t\treturn this.manipulateListeners(true, evt, listeners);\n\t};\n\n\t/**\n\t * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level.\n\t * The first argument will determine if the listeners are removed (true) or added (false).\n\t * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n\t * You can also pass it an event name and an array of listeners to be added/removed.\n\t * You can also pass it a regular expression to manipulate the listeners of all events that match it.\n\t *\n\t * @param {Boolean} remove True if you want to remove listeners, false if you want to add.\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to add/remove.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {\n\t\tvar i;\n\t\tvar value;\n\t\tvar single = remove ? this.removeListener : this.addListener;\n\t\tvar multiple = remove ? this.removeListeners : this.addListeners;\n\n\t\t// If evt is an object then pass each of it's properties to this method\n\t\tif (typeof evt === 'object' && !(evt instanceof RegExp)) {\n\t\t\tfor (i in evt) {\n\t\t\t\tif (evt.hasOwnProperty(i) && (value = evt[i])) {\n\t\t\t\t\t// Pass the single listener straight through to the singular method\n\t\t\t\t\tif (typeof value === 'function') {\n\t\t\t\t\t\tsingle.call(this, i, value);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t// Otherwise pass back to the multiple function\n\t\t\t\t\t\tmultiple.call(this, i, value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// So evt must be a string\n\t\t\t// And listeners must be an array of listeners\n\t\t\t// Loop over it and pass each one to the multiple method\n\t\t\ti = listeners.length;\n\t\t\twhile (i--) {\n\t\t\t\tsingle.call(this, evt, listeners[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Removes all listeners from a specified event.\n\t * If you do not specify an event then all listeners will be removed.\n\t * That means every event will be emptied.\n\t * You can also pass a regex to remove all events that match it.\n\t *\n\t * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeEvent = function removeEvent(evt) {\n\t\tvar type = typeof evt;\n\t\tvar events = this._getEvents();\n\t\tvar key;\n\n\t\t// Remove different things depending on the state of evt\n\t\tif (type === 'string') {\n\t\t\t// Remove all listeners for the specified event\n\t\t\tdelete events[evt];\n\t\t}\n\t\telse if (evt instanceof RegExp) {\n\t\t\t// Remove all events matching the regex.\n\t\t\tfor (key in events) {\n\t\t\t\tif (events.hasOwnProperty(key) && evt.test(key)) {\n\t\t\t\t\tdelete events[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Remove all listeners in all events\n\t\t\tdelete this._events;\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of removeEvent.\n\t *\n\t * Added to mirror the node API.\n\t */\n\tproto.removeAllListeners = alias('removeEvent');\n\n\t/**\n\t * Emits an event of your choice.\n\t * When emitted, every listener attached to that event will be executed.\n\t * If you pass the optional argument array then those arguments will be passed to every listener upon execution.\n\t * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately.\n\t * So they will not arrive within the array on the other side, they will be separate.\n\t * You can also pass a regular expression to emit to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n\t * @param {Array} [args] Optional array of arguments to be passed to each listener.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.emitEvent = function emitEvent(evt, args) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar listener;\n\t\tvar i;\n\t\tvar key;\n\t\tvar response;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key)) {\n\t\t\t\ti = listeners[key].length;\n\n\t\t\t\twhile (i--) {\n\t\t\t\t\t// If the listener returns true then it shall be removed from the event\n\t\t\t\t\t// The function is executed either with a basic call or an apply if there is an args array\n\t\t\t\t\tlistener = listeners[key][i];\n\n\t\t\t\t\tif (listener.once === true) {\n\t\t\t\t\t\tthis.removeListener(evt, listener.listener);\n\t\t\t\t\t}\n\n\t\t\t\t\tresponse = listener.listener.apply(this, args || []);\n\n\t\t\t\t\tif (response === this._getOnceReturnValue()) {\n\t\t\t\t\t\tthis.removeListener(evt, listener.listener);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of emitEvent\n\t */\n\tproto.trigger = alias('emitEvent');\n\n\t/**\n\t * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on.\n\t * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n\t * @param {...*} Optional additional arguments to be passed to each listener.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.emit = function emit(evt) {\n\t\tvar args = Array.prototype.slice.call(arguments, 1);\n\t\treturn this.emitEvent(evt, args);\n\t};\n\n\t/**\n\t * Sets the current value to check against when executing listeners. If a\n\t * listeners return value matches the one set here then it will be removed\n\t * after execution. This value defaults to true.\n\t *\n\t * @param {*} value The new value to check for when executing listeners.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.setOnceReturnValue = function setOnceReturnValue(value) {\n\t\tthis._onceReturnValue = value;\n\t\treturn this;\n\t};\n\n\t/**\n\t * Fetches the current value to check against when executing listeners. If\n\t * the listeners return value matches this one then it should be removed\n\t * automatically. It will return true by default.\n\t *\n\t * @return {*|Boolean} The current value to check for or the default, true.\n\t * @api private\n\t */\n\tproto._getOnceReturnValue = function _getOnceReturnValue() {\n\t\tif (this.hasOwnProperty('_onceReturnValue')) {\n\t\t\treturn this._onceReturnValue;\n\t\t}\n\t\telse {\n\t\t\treturn true;\n\t\t}\n\t};\n\n\t/**\n\t * Fetches the events object and creates one if required.\n\t *\n\t * @return {Object} The events storage object.\n\t * @api private\n\t */\n\tproto._getEvents = function _getEvents() {\n\t\treturn this._events || (this._events = {});\n\t};\n\n\t/**\n\t * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version.\n\t *\n\t * @return {Function} Non conflicting EventEmitter class.\n\t */\n\tEventEmitter.noConflict = function noConflict() {\n\t\texports.EventEmitter = originalGlobalValue;\n\t\treturn EventEmitter;\n\t};\n\n\treturn EventEmitter;\n}());\n/* jshint ignore:end */\n\n\n\n\tvar validateTypeFunction = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"undefined\" || typeof value === \"function\", \"Function\" );\n\t};\n\n\n\n\n\tvar superGet, superInit,\n\t\tglobalEe = new EventEmitter();\n\n\tfunction validateTypeEvent( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\" || value instanceof RegExp, \"String or RegExp\" );\n\t}\n\n\tfunction validateThenCall( method, self ) {\n\t\treturn function( event, listener ) {\n\t\t\tvalidatePresence( event, \"event\" );\n\t\t\tvalidateTypeEvent( event, \"event\" );\n\n\t\t\tvalidatePresence( listener, \"listener\" );\n\t\t\tvalidateTypeFunction( listener, \"listener\" );\n\n\t\t\treturn self[ method ].apply( self, arguments );\n\t\t};\n\t}\n\n\tfunction off( self ) {\n\t\treturn validateThenCall( \"off\", self );\n\t}\n\n\tfunction on( self ) {\n\t\treturn validateThenCall( \"on\", self );\n\t}\n\n\tfunction once( self ) {\n\t\treturn validateThenCall( \"once\", self );\n\t}\n\n\tCldr.off = off( globalEe );\n\tCldr.on = on( globalEe );\n\tCldr.once = once( globalEe );\n\n\t/**\n\t * Overload Cldr.prototype.init().\n\t */\n\tsuperInit = Cldr.prototype.init;\n\tCldr.prototype.init = function() {\n\t\tvar ee;\n\t\tthis.ee = ee = new EventEmitter();\n\t\tthis.off = off( ee );\n\t\tthis.on = on( ee );\n\t\tthis.once = once( ee );\n\t\tsuperInit.apply( this, arguments );\n\t};\n\n\t/**\n\t * getOverload is encapsulated, because of cldr/unresolved. If it's loaded\n\t * after cldr/event (and note it overwrites .get), it can trigger this\n\t * overload again.\n\t */\n\tfunction getOverload() {\n\n\t\t/**\n\t\t * Overload Cldr.prototype.get().\n\t\t */\n\t\tsuperGet = Cldr.prototype.get;\n\t\tCldr.prototype.get = function( path ) {\n\t\t\tvar value = superGet.apply( this, arguments );\n\t\t\tpath = pathNormalize( path, this.attributes ).join( \"/\" );\n\t\t\tglobalEe.trigger( \"get\", [ path, value ] );\n\t\t\tthis.ee.trigger( \"get\", [ path, value ] );\n\t\t\treturn value;\n\t\t};\n\t}\n\n\tCldr._eventInit = getOverload;\n\tgetOverload();\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar alwaysArray = Cldr._alwaysArray;\n\n\n\n\tvar supplementalMain = function( cldr ) {\n\n\t\tvar prepend, supplemental;\n\t\t\n\t\tprepend = function( prepend ) {\n\t\t\treturn function( path ) {\n\t\t\t\tpath = alwaysArray( path );\n\t\t\t\treturn cldr.get( [ prepend ].concat( path ) );\n\t\t\t};\n\t\t};\n\n\t\tsupplemental = prepend( \"supplemental\" );\n\n\t\t// Week Data\n\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Week_Data\n\t\tsupplemental.weekData = prepend( \"supplemental/weekData\" );\n\n\t\tsupplemental.weekData.firstDay = function() {\n\t\t\treturn cldr.get( \"supplemental/weekData/firstDay/{territory}\" ) ||\n\t\t\t\tcldr.get( \"supplemental/weekData/firstDay/001\" );\n\t\t};\n\n\t\tsupplemental.weekData.minDays = function() {\n\t\t\tvar minDays = cldr.get( \"supplemental/weekData/minDays/{territory}\" ) ||\n\t\t\t\tcldr.get( \"supplemental/weekData/minDays/001\" );\n\t\t\treturn parseInt( minDays, 10 );\n\t\t};\n\n\t\t// Time Data\n\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data\n\t\tsupplemental.timeData = prepend( \"supplemental/timeData\" );\n\n\t\tsupplemental.timeData.allowed = function() {\n\t\t\treturn cldr.get( \"supplemental/timeData/{territory}/_allowed\" ) ||\n\t\t\t\tcldr.get( \"supplemental/timeData/001/_allowed\" );\n\t\t};\n\n\t\tsupplemental.timeData.preferred = function() {\n\t\t\treturn cldr.get( \"supplemental/timeData/{territory}/_preferred\" ) ||\n\t\t\t\tcldr.get( \"supplemental/timeData/001/_preferred\" );\n\t\t};\n\n\t\treturn supplemental;\n\n\t};\n\n\n\n\n\tvar initSuper = Cldr.prototype.init;\n\n\t/**\n\t * .init() automatically ran on construction.\n\t *\n\t * Overload .init().\n\t */\n\tCldr.prototype.init = function() {\n\t\tinitSuper.apply( this, arguments );\n\t\tthis.supplemental = supplementalMain( this );\n\t};\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar coreLoad = Cldr._coreLoad;\n\tvar jsonMerge = Cldr._jsonMerge;\n\tvar pathNormalize = Cldr._pathNormalize;\n\tvar resourceGet = Cldr._resourceGet;\n\tvar validatePresence = Cldr._validatePresence;\n\tvar validateTypePath = Cldr._validateTypePath;\n\n\n\n\tvar bundleParentLookup = function( Cldr, locale ) {\n\t\tvar normalizedPath, parent;\n\n\t\tif ( locale === \"root\" ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// First, try to find parent on supplemental data.\n\t\tnormalizedPath = pathNormalize( [ \"supplemental/parentLocales/parentLocale\", locale ] );\n\t\tparent = resourceGet( Cldr._resolved, normalizedPath ) || resourceGet( Cldr._raw, normalizedPath );\n\t\tif ( parent ) {\n\t\t\treturn parent;\n\t\t}\n\n\t\t// Or truncate locale.\n\t\tparent = locale.substr( 0, locale.lastIndexOf( Cldr.localeSep ) );\n\t\tif ( !parent ) {\n\t\t\treturn \"root\";\n\t\t}\n\n\t\treturn parent;\n\t};\n\n\n\n\n\t// @path: normalized path\n\tvar resourceSet = function( data, path, value ) {\n\t\tvar i,\n\t\t\tnode = data,\n\t\t\tlength = path.length;\n\n\t\tfor ( i = 0; i < length - 1; i++ ) {\n\t\t\tif ( !node[ path[ i ] ] ) {\n\t\t\t\tnode[ path[ i ] ] = {};\n\t\t\t}\n\t\t\tnode = node[ path[ i ] ];\n\t\t}\n\t\tnode[ path[ i ] ] = value;\n\t};\n\n\n\tvar itemLookup = (function() {\n\n\tvar lookup;\n\n\tlookup = function( Cldr, locale, path, attributes, childLocale ) {\n\t\tvar normalizedPath, parent, value;\n\n\t\t// 1: Finish recursion\n\t\t// 2: Avoid infinite loop\n\t\tif ( typeof locale === \"undefined\" /* 1 */ || locale === childLocale /* 2 */ ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Resolve path\n\t\tnormalizedPath = pathNormalize( path, attributes );\n\n\t\t// Check resolved (cached) data first\n\t\t// 1: Due to #16, never use the cached resolved non-leaf nodes. It may not\n\t\t// represent its leafs in its entirety.\n\t\tvalue = resourceGet( Cldr._resolved, normalizedPath );\n\t\tif ( value !== undefined && typeof value !== \"object\" /* 1 */ ) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Check raw data\n\t\tvalue = resourceGet( Cldr._raw, normalizedPath );\n\n\t\tif ( value === undefined ) {\n\t\t\t// Or, lookup at parent locale\n\t\t\tparent = bundleParentLookup( Cldr, locale );\n\t\t\tvalue = lookup( Cldr, parent, path, jsonMerge( attributes, { bundle: parent }), locale );\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\t\t\t// Set resolved (cached)\n\t\t\tresourceSet( Cldr._resolved, normalizedPath, value );\n\t\t}\n\n\t\treturn value;\n\t};\n\n\treturn lookup;\n\n}());\n\n\n\tCldr._raw = {};\n\n\t/**\n\t * Cldr.load( json [, json, ...] )\n\t *\n\t * @json [JSON] CLDR data or [Array] Array of @json's.\n\t *\n\t * Load resolved or unresolved cldr data.\n\t * Overwrite Cldr.load().\n\t */\n\tCldr.load = function() {\n\t\tCldr._raw = coreLoad( Cldr, Cldr._raw, arguments );\n\t};\n\n\t/**\n\t * Overwrite Cldr.prototype.get().\n\t */\n\tCldr.prototype.get = function( path ) {\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\t// 1: use bundle as locale on item lookup for simplification purposes, because no other extended subtag is used anyway on bundle parent lookup.\n\t\t// 2: during init(), this method is called, but bundle is yet not defined. Use \"\" as a workaround in this very specific scenario.\n\t\treturn itemLookup( Cldr, this.attributes && this.attributes.bundle /* 1 */ || \"\" /* 2 */, path, this.attributes );\n\t};\n\n\t// In case cldr/unresolved is loaded after cldr/event, we trigger its overloads again. Because, .get is overwritten in here.\n\tif ( Cldr._eventInit ) {\n\t\tCldr._eventInit();\n\t}\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n\n// Cldr\nmodule.exports = require( \"./cldr\" );\n\n// Extent Cldr with the following modules\nrequire( \"./cldr/event\" );\nrequire( \"./cldr/supplemental\" );\nrequire( \"./cldr/unresolved\" );\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport CldrDateTimeTextProvider from './format/cldr/CldrDateTimeTextProvider';\n\nexport default class Locale {\n static getAvailableLocales() {\n return new CldrDateTimeTextProvider().getAvailableLocales();\n }\n\n // TODO: maybe use new Cldr(<'en'>) constructor instead?\n // see https://github.com/rxaviers/cldrjs#instantiate-a-locale-and-get-it-normalized\n constructor(language, country = '', localeString = '') {\n this._language = language;\n this._country = country;\n this._localeString = localeString;\n }\n\n language() {\n return this._language;\n }\n\n country() {\n return this._country;\n }\n\n localeString() {\n if (this._localeString.length > 0) {\n return this._localeString;\n }\n if (this._country.length > 0) {\n return `${this._language}-${this._country}`;\n } else {\n return this._language;\n }\n }\n\n toString() {\n return `Locale[${this.localeString()}]`;\n }\n\n equals(other) {\n if (!other) {\n return false;\n }\n if (!(other instanceof Locale)) {\n return false;\n }\n return this.localeString() === other.localeString();\n }\n}\n\nexport function _init() {\n //some samples/consts\n Locale.ENGLISH = new Locale('en');\n Locale.US = new Locale('en', 'US', 'en'); // default in cldr-data, no en-US\n Locale.UK = new Locale('en', 'GB');\n Locale.CANADA = new Locale('en', 'CA');\n Locale.FRENCH = new Locale('fr');\n Locale.FRANCE = new Locale('fr', 'FR', 'fr'); // default in cldr-data, no fr-FR\n Locale.GERMAN = new Locale('de');\n Locale.GERMANY = new Locale('de', 'DE', 'de'); // default in cldr-data, no de-DE\n}\n","/*\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport { _init as localeInit } from './Locale';\nimport { _init as weekFieldsInit } from './temporal/WeekFields';\n\nlet isInit = false;\n\nfunction init() {\n /* istanbul ignore if */\n if (isInit) {\n return;\n }\n\n isInit = true;\n\n localeInit();\n weekFieldsInit();\n}\n\ninit();\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { _ as jodaInternal, DateTimeFormatter } from 'js-joda';\n// eslint-disable-next-line no-unused-vars, (needed for esdoc)\nimport Locale from '../Locale';\n\nconst { assert: { requireNonNull } } = jodaInternal;\n\nexport default class LocaleDateTimeFormatter extends DateTimeFormatter {\n\n /**\n * Returns a copy of this formatter with a new locale.\n *

\n * This is used to lookup any part of the formatter needing specific\n * localization, such as the text or localized pattern.\n *

\n * This instance is immutable and unaffected by this method call.\n *\n * @param {!Locale} locale the new locale, not null\n * @return a formatter based on this formatter with the requested locale, not null\n */\n withLocale(locale) {\n requireNonNull(locale, 'locale');\n if (locale.equals(this._locale)) {\n return this;\n }\n return new DateTimeFormatter(this._printerParser, locale, this._decimalStyle, this._resolverStyle, this._resolverFields, this._chrono, this._zone);\n }\n\n\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n\n/**\n * Helper method to create an immutable entry.\n *\n * @param text the text, not null\n * @param field the field, not null\n * @return the entry, not null\n */\nexport const createEntry = (text, field) => {\n return {\n key: text,\n value: field,\n toString: function () {\n return text + '->' + field;\n }\n };\n};\n\nconst _comparator = (obj1, obj2) => {\n return obj2.key.length - obj1.key.length; // longest to shortest\n};\n\n/**\n * Stores the text for a single locale.\n *

\n * Some fields have a textual representation, such as day-of-week or month-of-year.\n * These textual representations can be captured in this class for printing\n * and parsing.\n */\nexport class LocaleStore {\n //-----------------------------------------------------------------------\n /**\n * Constructor.\n *\n * @param {Object} valueTextMap the map of values to text to store, assigned and not altered, not null\n */\n constructor(valueTextMap) {\n this._valueTextMap = valueTextMap;\n const map = {};\n let allList = [];\n Object.keys(valueTextMap).forEach((style) => {\n const reverse = {};\n Object.keys(valueTextMap[style]).forEach((key) => {\n const value = valueTextMap[style][key];\n if (reverse[value] === undefined) {\n reverse[value] = createEntry(value, Number.parseInt(key));\n }\n });\n const list = Object.values(reverse);\n list.sort(_comparator);\n map[style] = list;\n allList = allList.concat(list);\n map[null] = allList;\n });\n allList.sort(_comparator);\n this._parsable = map;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Gets the text for the specified field value, locale and style\n * for the purpose of printing.\n *\n * @param {Number} value the value to get text for, not null\n * @param {TextStyle} style the style to get text for, not null\n * @return the text for the field value, null if no text found\n */\n getText(value, style) {\n const map = this._valueTextMap[style];\n return map != null ? map[value] : null;\n }\n\n /**\n * Gets an iterator of text to field for the specified style for the purpose of parsing.\n *

\n * The iterator must be returned in order from the longest text to the shortest.\n *\n * @param style the style to get text for, null for all parsable text\n * @return the iterator of text to field pairs, in order from longest text to shortest text,\n * null if the style is not parsable\n */\n getTextIterator(style) {\n const list = this._parsable[style];\n return list != null ? list[Symbol.iterator]() : null;\n }\n}\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeFormatterBuilder,\n IllegalArgumentException,\n TextStyle,\n ChronoField,\n TemporalField\n} from 'js-joda';\n\nimport TextPrinterParser from '../parser/TextPrinterParser';\nimport CldrDateTimeTextProvider from './CldrDateTimeTextProvider';\nimport CldrZoneTextPrinterParser from './CldrZoneTextPrinterParser';\nimport {LocaleStore} from '../LocaleStore';\nimport LocalizedOffsetPrinterParser from '../parser/LocalizedOffsetPrinterParser';\nimport WeekFieldsPrinterParser from '../parser/WeekFieldsPrinterParser';\n\nconst { assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n/** DateTimeFormatterBuilder extension functions implementing locale handling using cldr data (http://cldr.unicode.org/)\n */\nexport default class CldrDateTimeFormatterBuilder extends DateTimeFormatterBuilder {\n\n //-------------------------------------------------------------------------\n /**\n * function overloading for {@link CldrDateTimeFormatterBuilder#appendText}\n *\n * if called with 1 arguments and first argument is an instance of ChronoField,\n * then {@link CldrDateTimeFormatterBuilder.appendTextField} is executed.\n * if called with 2 arguments and second argument is an instance of TextStyle,\n * then {@link CldrDateTimeFormatterBuilder.appendTextFieldStyle} is executed.\n *\n * Otherwise {@link CldrDateTimeFormatterBuilder.appendTextFieldMap} is executed.\n *\n * @param {!ChronoField} field\n * @param {!(TextStyle|Object)} styleOrMap\n * @returns {DateTimeFormatterBuilder} this for chaining\n */\n appendText(field, styleOrMap) {\n if (styleOrMap === undefined) {\n return this.appendTextField(field);\n } else if (styleOrMap instanceof TextStyle) {\n return this.appendTextFieldStyle(field, styleOrMap);\n } else {\n return this.appendTextFieldMap(field, styleOrMap);\n }\n }\n\n /**\n * Appends the text of a date-time field to the formatter using the full\n * text style.\n *

\n * The text of the field will be output during a print.\n * The value must be within the valid range of the field.\n * If the value cannot be obtained then an exception will be thrown.\n * If the field has no textual representation, then the numeric value will be used.\n *

\n * The value will be printed as per the normal print of an integer value.\n * Only negative numbers will be signed. No padding will be added.\n *\n * @param {!TemporalField} field the field to append, not null\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextField(field) {\n return this.appendTextFieldStyle(field, TextStyle.FULL);\n }\n\n /**\n * Appends the text of a date-time field to the formatter.\n *

\n * The text of the field will be output during a print.\n * The value must be within the valid range of the field.\n * If the value cannot be obtained then an exception will be thrown.\n * If the field has no textual representation, then the numeric value will be used.\n *

\n * The value will be printed as per the normal print of an integer value.\n * Only negative numbers will be signed. No padding will be added.\n *\n * @param {!TemporalField} field the field to append, not null\n * @param {!TextStyle} textStyle the text style to use, not null\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextFieldStyle(field, textStyle) {\n requireNonNull(field, 'field');\n requireInstance(field, TemporalField, 'field');\n requireNonNull(textStyle, 'textStyle');\n requireInstance(textStyle, TextStyle, 'textStyle');\n this._appendInternal(new TextPrinterParser(field, textStyle, new CldrDateTimeTextProvider()));\n return this;\n }\n\n /**\n * Appends the text of a date-time field to the formatter using the specified\n * map to supply the text.\n *

\n * The standard text outputting methods use the localized text in the JDK.\n * This method allows that text to be specified directly.\n * The supplied map is not validated by the builder to ensure that printing or\n * parsing is possible, thus an invalid map may throw an error during later use.\n *

\n * Supplying the map of text provides considerable flexibility in printing and parsing.\n * For example, a legacy application might require or supply the months of the\n * year as \"JNY\", \"FBY\", \"MCH\" etc. These do not match the standard set of text\n * for localized month names. Using this method, a map can be created which\n * defines the connection between each value and the text:\n *

\n     * Map<Long, String> map = new HashMap<>();\n     * map.put(1, \"JNY\");\n     * map.put(2, \"FBY\");\n     * map.put(3, \"MCH\");\n     * ...\n     * builder.appendText(MONTH_OF_YEAR, map);\n     * 
\n *

\n * Other uses might be to output the value with a suffix, such as \"1st\", \"2nd\", \"3rd\",\n * or as Roman numerals \"I\", \"II\", \"III\", \"IV\".\n *

\n * During printing, the value is obtained and checked that it is in the valid range.\n * If text is not available for the value then it is output as a number.\n * During parsing, the parser will match against the map of text and numeric values.\n *\n * @param {!ChronoField} field the field to append, not null\n * @param {!Object} textLookup the map from the value to the text\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextFieldMap(field, textLookup) {\n requireNonNull(field, 'field');\n requireInstance(field, ChronoField, 'field');\n requireNonNull(textLookup, 'textLookup');\n const copy = Object.assign({}, textLookup);\n const map = {};\n map[TextStyle.FULL] = copy;\n const store = new LocaleStore(map);\n const provider = {\n getText: function(field, value, style) {\n return store.getText(value, style);\n },\n getTextIterator: function(field, style) {\n return store.getTextIterator(style);\n }\n };\n this._appendInternal(new TextPrinterParser(field, TextStyle.FULL, provider));\n return this;\n }\n\n appendWeekField(field, count) {\n requireNonNull(field, 'field');\n requireNonNull(count, 'count');\n this._appendInternal(new WeekFieldsPrinterParser(field, count));\n return this;\n }\n\n /**\n * Appends the time-zone name, such as 'British Summer Time', to the formatter.\n *

\n * This appends an instruction to print the textual name of the zone to the builder.\n *

\n * During printing, the zone is obtained using a mechanism equivalent\n * to querying the temporal with {@link TemporalQueries#zoneId()}.\n * If the zone is a {@code ZoneOffset} it will be printed using the\n * result of {@link ZoneOffset#getId()}.\n * If the zone is not an offset, the textual name will be looked up\n * for the locale set in the {@link DateTimeFormatter}.\n * If the temporal object being printed represents an instant, then the text\n * will be the summer or winter time text as appropriate.\n * If the lookup for text does not find any suitable reuslt, then the\n * {@link ZoneId#getId() ID} will be printed instead.\n * If the zone cannot be obtained then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * Parsing is not currently supported.\n *\n * @param {!TextStyle} textStyle the text style to use, not null\n * @return this, for chaining, not null\n */\n appendZoneText(textStyle) {\n this._appendInternal(new CldrZoneTextPrinterParser(textStyle));\n return this;\n }\n\n /**\n * Appends the localized zone offset, such as 'GMT+01:00', to the formatter.\n *

\n * This appends a localized zone offset to the builder, the format of the\n * localized offset is controlled by the specified {@link FormatStyle style}\n * to this method:\n *

    \n *
  • {@link TextStyle#FULL full} - formats with localized offset text, such\n * as 'GMT, 2-digit hour and minute field, optional second field if non-zero,\n * and colon.\n *
  • {@link TextStyle#SHORT short} - formats with localized offset text,\n * such as 'GMT, hour without leading zero, optional 2-digit minute and\n * second if non-zero, and colon.\n *
\n *

\n * During formatting, the offset is obtained using a mechanism equivalent\n * to querying the temporal with {@link TemporalQueries#offset()}.\n * If the offset cannot be obtained then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * During parsing, the offset is parsed using the format defined above.\n * If the offset cannot be parsed then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * @param {TextStyle} textStyle the format style to use, not null\n * @return this, for chaining, not null\n * @throws IllegalArgumentException if style is neither {@link TextStyle#FULL\n * full} nor {@link TextStyle#SHORT short}\n */\n appendLocalizedOffset(textStyle) {\n requireNonNull(textStyle, 'textStyle');\n if (textStyle !== TextStyle.FULL && textStyle !== TextStyle.SHORT) {\n throw new IllegalArgumentException('Style must be either full or short');\n }\n this._appendInternal(new LocalizedOffsetPrinterParser(textStyle));\n return this;\n }\n\n //-----------------------------------------------------------------------\n\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { ChronoField, IsoFields, TextStyle } from 'js-joda';\n\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nimport {LocaleStore, createEntry} from '../LocaleStore';\n\n/**\n * The Service Provider Implementation to obtain date-time text for a field.\n *

\n * This implementation is based on data from cldr.\n *\n * @private\n */\nexport default class CldrDateTimeTextProvider {\n\n constructor() {\n this._cache = {};\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n }\n\n //-----------------------------------------------------------------------\n getAvailableLocales() {\n /* eslint-disable no-undef */\n // JS_JODA_LOCALE_AVAILABLE_LOCALS may be defined using webpack DefinePlugin\n if (typeof(JS_JODA_LOCALE_AVAILABLE_LOCALES) !== 'undefined') {\n return JS_JODA_LOCALE_AVAILABLE_LOCALES;\n }\n /* eslint-enable no-undef */\n return cldrData('availableLocales.json').availableLocales;\n }\n\n //-----------------------------------------------------------------------\n getText(field, value, style, locale) {\n const store = this._findStore(field, locale);\n if (store instanceof LocaleStore) {\n return store.getText(value, style);\n }\n return null;\n }\n\n getTextIterator(field, style, locale) {\n const store = this._findStore(field, locale);\n if (store instanceof LocaleStore) {\n return store.getTextIterator(style);\n }\n return null;\n }\n\n //-----------------------------------------------------------------------\n _findStore(field, locale) {\n const key = createEntry(field, locale);\n let store = this._cache[key];\n if (store === undefined) {\n store = this._createStore(field, locale);\n this._cache[key] = store;\n }\n return store;\n }\n\n _createStore(field, locale) {\n Cldr.load(cldrData(`main/${locale.localeString()}/ca-gregorian.json`));\n const cldr = new Cldr(locale.localeString());\n if (field === ChronoField.MONTH_OF_YEAR) {\n const monthsData = cldr.main('dates/calendars/gregorian/months/format');\n const styleMap = {};\n let data = {};\n data[1] = monthsData.wide[1];\n data[2] = monthsData.wide[2];\n data[3] = monthsData.wide[3];\n data[4] = monthsData.wide[4];\n data[5] = monthsData.wide[5];\n data[6] = monthsData.wide[6];\n data[7] = monthsData.wide[7];\n data[8] = monthsData.wide[8];\n data[9] = monthsData.wide[9];\n data[10] = monthsData.wide[10];\n data[11] = monthsData.wide[11];\n data[12] = monthsData.wide[12];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = monthsData.narrow[1];\n data[2] = monthsData.narrow[2];\n data[3] = monthsData.narrow[3];\n data[4] = monthsData.narrow[4];\n data[5] = monthsData.narrow[5];\n data[6] = monthsData.narrow[6];\n data[7] = monthsData.narrow[7];\n data[8] = monthsData.narrow[8];\n data[9] = monthsData.narrow[9];\n data[10] = monthsData.narrow[10];\n data[11] = monthsData.narrow[11];\n data[12] = monthsData.narrow[12];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = monthsData.abbreviated[1];\n data[2] = monthsData.abbreviated[2];\n data[3] = monthsData.abbreviated[3];\n data[4] = monthsData.abbreviated[4];\n data[5] = monthsData.abbreviated[5];\n data[6] = monthsData.abbreviated[6];\n data[7] = monthsData.abbreviated[7];\n data[8] = monthsData.abbreviated[8];\n data[9] = monthsData.abbreviated[9];\n data[10] = monthsData.abbreviated[10];\n data[11] = monthsData.abbreviated[11];\n data[12] = monthsData.abbreviated[12];\n styleMap[TextStyle.SHORT] = data;\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.DAY_OF_WEEK) {\n const daysData = cldr.main('dates/calendars/gregorian/days/format');\n const styleMap = {};\n let data = {};\n data[1] = daysData.wide.mon;\n data[2] = daysData.wide.tue;\n data[3] = daysData.wide.wed;\n data[4] = daysData.wide.thu;\n data[5] = daysData.wide.fri;\n data[6] = daysData.wide.sat;\n data[7] = daysData.wide.sun;\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = daysData.narrow.mon;\n data[2] = daysData.narrow.tue;\n data[3] = daysData.narrow.wed;\n data[4] = daysData.narrow.thu;\n data[5] = daysData.narrow.fri;\n data[6] = daysData.narrow.sat;\n data[7] = daysData.narrow.sun;\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = daysData.abbreviated.mon;\n data[2] = daysData.abbreviated.tue;\n data[3] = daysData.abbreviated.wed;\n data[4] = daysData.abbreviated.thu;\n data[5] = daysData.abbreviated.fri;\n data[6] = daysData.abbreviated.sat;\n data[7] = daysData.abbreviated.sun;\n styleMap[TextStyle.SHORT] = data;\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.AMPM_OF_DAY) {\n const dayPeriodsData = cldr.main('dates/calendars/gregorian/dayPeriods/format');\n const styleMap = {};\n let data = {};\n data[0] = dayPeriodsData.wide.am;\n data[1] = dayPeriodsData.wide.pm;\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[0] = dayPeriodsData.narrow.am;\n data[1] = dayPeriodsData.narrow.pm;\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[0] = dayPeriodsData.abbreviated.am;\n data[1] = dayPeriodsData.abbreviated.pm;\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.ERA) {\n const erasData = cldr.main('dates/calendars/gregorian/eras');\n const styleMap = {};\n let data = {};\n data[0] = erasData.eraNames['0'];\n data[1] = erasData.eraNames['1'];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[0] = erasData.eraNarrow['0'];\n data[1] = erasData.eraNarrow['1'];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[0] = erasData.eraAbbr['0'];\n data[1] = erasData.eraAbbr['1'];\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n if (field === IsoFields.QUARTER_OF_YEAR) {\n const quartersData = cldr.main('dates/calendars/gregorian/quarters/format');\n const styleMap = {};\n let data = {};\n data[1] = quartersData.wide['1'];\n data[2] = quartersData.wide['2'];\n data[3] = quartersData.wide['3'];\n data[4] = quartersData.wide['4'];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = quartersData.narrow['1'];\n data[2] = quartersData.narrow['2'];\n data[3] = quartersData.narrow['3'];\n data[4] = quartersData.narrow['4'];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = quartersData.abbreviated['1'];\n data[2] = quartersData.abbreviated['2'];\n data[3] = quartersData.abbreviated['3'];\n data[4] = quartersData.abbreviated['4'];\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n return null; // null marker for map\n }\n\n //-----------------------------------------------------------------------\n _createLocaleStore(valueTextMap) {\n valueTextMap[TextStyle.FULL_STANDALONE] = valueTextMap[TextStyle.FULL];\n valueTextMap[TextStyle.SHORT_STANDALONE] = valueTextMap[TextStyle.SHORT];\n /* istanbul ignore if */ // this doesn't seem to happen?\n if (Object.keys(valueTextMap).includes(TextStyle.NARROW) && !Object.keys(valueTextMap).includes(TextStyle.NARROW_STANDALONE)) {\n valueTextMap[TextStyle.NARROW_STANDALONE] = valueTextMap[TextStyle.NARROW];\n }\n return new LocaleStore(valueTextMap);\n }\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nimport {\n _ as jodaInternal,\n TextStyle,\n TemporalQueries,\n ZoneId,\n ZoneOffset,\n ZoneRulesProvider,\n} from 'js-joda';\n\nconst { assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n//-----------------------------------------------------------------------\nconst LENGTH_COMPARATOR = (str1, str2) => {\n let cmp = str2.length - str1.length;\n if (cmp === 0) {\n cmp = str1.localeCompare(str2);\n }\n return cmp;\n};\n/**\n * Prints or parses a zone ID.\n */\nexport default class CldrZoneTextPrinterParser {\n /** The text style to output. */\n\n constructor(textStyle) {\n requireNonNull(textStyle, 'textStyle');\n requireInstance(textStyle, TextStyle, 'textStyle');\n this._textStyle = textStyle;\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n Cldr.load(cldrData('supplemental/metaZones.json'));\n }\n\n _resolveZoneIdText(cldr, zoneId, style, type, mapZones) {\n const zoneData = cldr.main(`dates/timeZoneNames/zone/${zoneId}/${style}/${type}`);\n if (zoneData) {\n return zoneData;\n } else {\n const metazoneInfo = cldr.get(`supplemental/metaZones/metazoneInfo/timezone/${zoneId}`);\n if (metazoneInfo) {\n // const zoneData = cldr.main(`dates/timeZoneNames/metazone/Acre`);\n // TODO: determine metaZone for current temporal, for now, we use the last one :/\n const metazone = metazoneInfo[metazoneInfo.length - 1]['usesMetazone']['_mzone'];\n let metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/${type}`);\n if (metaZoneData) {\n return metaZoneData;\n } else {\n // type fallback, first generic, then standard\n metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/generic`);\n if (!metaZoneData) {\n metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/standard`);\n }\n if (metaZoneData) {\n return metaZoneData;\n } else {\n // find preferred Zone and resolve again\n const preferredZone = mapZones[metazone][cldr.attributes.territory];\n if (preferredZone) {\n if (preferredZone !== zoneId) {\n return this._resolveZoneIdText(cldr, preferredZone, style, type, mapZones);\n }\n } else {\n // find golden Zone and resolve again\n const goldenZone = mapZones[metazone]['001'];\n if (goldenZone !== zoneId) {\n return this._resolveZoneIdText(cldr, goldenZone, style, type, mapZones);\n }\n }\n }\n }\n }\n }\n }\n\n //-----------------------------------------------------------------------\n print(context, buf) {\n\n //see http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Zone_Names\n\n const zone = context.getValueQuery(TemporalQueries.zoneId());\n /* istanbul ignore if */ // shouldn't happen... getValueQuery throws before returning null\n if (zone == null) {\n return false;\n }\n if (zone.normalized() instanceof ZoneOffset) {\n buf.append(zone.id());\n return true;\n }\n const daylight = false;\n const hasDaylightSupport = false;\n /* TODO: currently js-joda-timezone does not support ZoneRules.isDaylightSavings() ... uncomment if it does\n const temporal = context.temporal();\n if (temporal.isSupported(ChronoField.INSTANT_SECONDS)) {\n hasDaylightSupport = true;\n const instant = Instant.ofEpochSecond(temporal.getLong(ChronoField.INSTANT_SECONDS));\n daylight = zone.rules().isDaylightSavings(instant);\n }*/\n const tzType = hasDaylightSupport ? (daylight ? 'daylight' : 'standard') : 'generic';\n const tzstyle = (this._textStyle.asNormal() === TextStyle.FULL ? 'long' : 'short');\n Cldr.load(cldrData(`main/${context.locale().localeString()}/timeZoneNames.json`));\n const cldr = new Cldr(context.locale().localeString());\n const mapZones = {};\n\n cldr.get('supplemental/metaZones/metazones').forEach((metaZone) => {\n if (metaZone.mapZone) {\n if (!mapZones[metaZone.mapZone._other]) {\n mapZones[metaZone.mapZone._other] = {};\n }\n mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type;\n }\n });\n\n const text = this._resolveZoneIdText(cldr, zone.id(), tzstyle, tzType, mapZones);\n if (text) {\n buf.append(text);\n } else {\n // fallback, print zoneId\n buf.append(zone.id());\n }\n return true;\n }\n\n parse(context, text, position) {\n const ids = {};\n Cldr.load(cldrData(`main/${context.locale().localeString()}/timeZoneNames.json`));\n const cldr = new Cldr(context.locale().localeString());\n const mapZones = {};\n\n cldr.get('supplemental/metaZones/metazones').forEach((metaZone) => {\n if (metaZone.mapZone) {\n if (!mapZones[metaZone.mapZone._other]) {\n mapZones[metaZone.mapZone._other] = {};\n }\n mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type;\n }\n });\n for (const id of ZoneRulesProvider.getAvailableZoneIds()) {\n ids[id] = id;\n const tzstyle = (this._textStyle.asNormal() === TextStyle.FULL ? 'long' : 'short');\n\n const genericText = this._resolveZoneIdText(cldr, id, tzstyle, 'generic', mapZones);\n if (genericText) {\n ids[genericText] = id;\n }\n const standardText = this._resolveZoneIdText(cldr, id, tzstyle, 'standard', mapZones);\n if (standardText) {\n ids[standardText] = id;\n }\n const daylightText = this._resolveZoneIdText(cldr, id, tzstyle, 'daylight', mapZones);\n if (daylightText) {\n ids[daylightText] = id;\n }\n }\n // threeten is using a (sorted) TreeMap... so we need to sort the keys\n const sortedKeys = Object.keys(ids).sort(LENGTH_COMPARATOR);\n for (const name of sortedKeys) {\n if (context.subSequenceEquals(text, position, name, 0, name.length)) {\n context.setParsedZone(ZoneId.of(ids[name]));\n return position + name.length;\n }\n }\n return ~position;\n }\n\n toString() {\n return `ZoneText(${this._textStyle})`;\n }\n}\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeFormatterBuilder,\n ChronoField,\n TextStyle\n} from 'js-joda';\n\nconst { MathUtil } = jodaInternal;\n//-----------------------------------------------------------------------\n/**\n * Prints or parses field text.\n * @private\n */\nexport default class LocalizedOffsetPrinterParser {\n /**\n * Constructor.\n *\n * @param {!TextStyle} textStyle the text style, not null\n */\n constructor(textStyle) {\n this._textStyle = textStyle;\n }\n\n textStyle() {\n return this._textStyle;\n }\n\n print(context, buf) {\n const offsetSecs = context.getValue(ChronoField.OFFSET_SECONDS);\n /* istanbul ignore if */ // shouldn't happen... getValue throws for unsupported fields?\n if (offsetSecs == null) {\n return false;\n }\n buf.append('GMT');\n if (this._textStyle === TextStyle.FULL) {\n return new DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').print(context, buf);\n }\n const totalSecs = MathUtil.safeToInt(offsetSecs);\n if (totalSecs !== 0) {\n const absHours = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 3600), 100)); // anything larger than 99 silently dropped\n const absMinutes = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs,60), 60));\n const absSeconds = Math.abs(MathUtil.intMod(totalSecs, 60));\n buf.append(totalSecs < 0 ? '-' : '+').append(absHours);\n if (absMinutes > 0 || absSeconds > 0) {\n buf.append(':')\n .append(MathUtil.intDiv(absMinutes, 10)).append(MathUtil.intMod(absMinutes,10));\n if (absSeconds > 0) {\n buf.append(':')\n .append(MathUtil.intDiv(absSeconds, 10)).append(MathUtil.intMod(absSeconds, 10));\n }\n }\n }\n return true;\n }\n\n parse(context, text, position) {\n if (context.subSequenceEquals(text, position, 'GMT', 0, 3) === false) {\n return ~position;\n }\n position += 3;\n if (this._textStyle === TextStyle.FULL) {\n return new DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').parse(context, text, position);\n }\n const end = text.length;\n if (position === end) {\n return context.setParsedField(ChronoField.OFFSET_SECONDS, 0, position, position);\n }\n const sign = text.charAt(position);\n if (sign !== '+' && sign !== '-') {\n return context.setParsedField(ChronoField.OFFSET_SECONDS, 0, position, position);\n }\n const negative = (sign === '-' ? -1 : 1);\n /* istanbul ignore if */ // cannot happen, already checked before\n if (position === end) {\n return ~position;\n }\n position++;\n // hour\n let ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let hour = MathUtil.parseInt(ch);\n if (position !== end) {\n ch = text.charAt(position);\n if (ch >= '0' && ch <= '9') {\n hour = hour * 10 + MathUtil.parseInt(ch);\n if (hour > 23) {\n return ~position;\n }\n position++;\n }\n }\n if (position === end || text.charAt(position) !== ':') {\n const offset = negative * 3600 * hour;\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n position++;\n // minute\n if (position > end - 2) {\n return ~position;\n }\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let min = MathUtil.parseInt(ch);\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n min = min * 10 + MathUtil.parseInt(ch);\n if (min > 59) {\n return ~position;\n }\n if (position === end || text.charAt(position) !== ':') {\n const offset = negative * (3600 * hour + 60 * min);\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n position++;\n // second\n if (position > end - 2) {\n return ~position;\n }\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let sec = MathUtil.parseInt(ch);\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n sec = sec * 10 + MathUtil.parseInt(ch);\n if (sec > 59) {\n return ~position;\n }\n const offset = negative * (3600 * hour + 60 * min + sec);\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n\n toString() {\n return `LocalizedOffset(${this._textStyle})`;\n }\n\n}\n\n//-----------------------------------------------------------------------\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport { DateTimeFormatterBuilder, IllegalArgumentException, SignStyle, TextStyle } from 'js-joda';\n\n//-----------------------------------------------------------------------\n/**\n * Prints or parses field text.\n * @private\n */\nexport default class TextPrinterParser {\n /**\n * Constructor.\n *\n * @param {!TemporalField} field the field to output, not null\n * @param {!TextStyle} textStyle the text style, not null\n * @param {!DateTimeProvider} provider the text provider, not null\n */\n constructor(field, textStyle, provider) {\n // validated by caller\n this._field = field;\n this._textStyle = textStyle;\n this._provider = provider;\n }\n\n field() {\n return this._field;\n }\n\n textStyle() {\n return this._textStyle;\n }\n\n provider() {\n return this._provider;\n }\n\n print(context, buf) {\n const value = context.getValue(this._field);\n if (value === null) {\n return false;\n }\n const text = this._provider.getText(this._field, value, this._textStyle, context.locale());\n if (text === null) {\n return this._numberPrinterParser().print(context, buf);\n }\n buf.append(text);\n return true;\n }\n\n parse(context, parseText, position) {\n const length = parseText.length;\n if (position < 0 || position > length) {\n throw new IllegalArgumentException(`The position is invalid: ${position}`);\n }\n const style = (context.isStrict() ? this._textStyle : null);\n const it = this._provider.getTextIterator(this._field, style, context.locale());\n if (it != null) {\n for (const entry of it) {\n const itText = entry.key;\n if (context.subSequenceEquals(itText, 0, parseText, position, itText.length)) {\n return context.setParsedField(this._field, entry.value, position, position + itText.length);\n }\n }\n if (context.isStrict()) {\n return ~position;\n }\n }\n return this._numberPrinterParser().parse(context, parseText, position);\n }\n\n /**\n * Create and cache a number printer parser.\n * @return the number printer parser for this field, not null\n */\n _numberPrinterParser() {\n if (this._currentNumberPrinterParser == null) {\n this._currentNumberPrinterParser = new DateTimeFormatterBuilder.NumberPrinterParser(this._field, 1, 19, SignStyle.NORMAL);\n }\n return this._currentNumberPrinterParser;\n }\n\n toString() {\n if (this._textStyle === TextStyle.FULL) {\n return `Text(${this._field})`;\n }\n return `Text(${this._field},${this._textStyle})`;\n }\n}\n\n//-----------------------------------------------------------------------\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { _ as jodaInternal, DateTimeFormatterBuilder, SignStyle } from 'js-joda';\n\nimport { WeekFields } from '../../temporal/WeekFields';\n\nconst { StringBuilder } = jodaInternal;\n\nexport default class WeekFieldsPrinterParser {\n constructor(letter, count) {\n this._letter = letter;\n this._count = count;\n }\n\n print(context, buf) {\n const weekFields = WeekFields.of(context.locale());\n const pp = this._evaluate(weekFields);\n return pp.print(context, buf);\n }\n\n parse(context, text, position) {\n const weekFields = WeekFields.of(context.locale());\n const pp = this._evaluate(weekFields);\n return pp.parse(context, text, position);\n }\n\n _evaluate(weekFields) {\n let pp = null;\n switch (this._letter) {\n case 'e': // day-of-week\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'c': // day-of-week\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'w': // week-of-year\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfWeekBasedYear(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'W': // week-of-month\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfMonth(), 1, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'Y': // weekyear\n if (this._count === 2) {\n pp = new DateTimeFormatterBuilder.ReducedPrinterParser(weekFields.weekBasedYear(), 2, 2, 0, DateTimeFormatterBuilder.ReducedPrinterParser.BASE_DATE);\n } else {\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekBasedYear(), this._count, 19,\n (this._count < 4) ? SignStyle.NORMAL : SignStyle.EXCEEDS_PAD, -1);\n }\n break;\n }\n return pp;\n }\n\n toString() {\n const sb = new StringBuilder(30);\n sb.append('Localized(');\n if (this._letter === 'Y') {\n if (this._count === 1) {\n sb.append('WeekBasedYear');\n } else if (this._count === 2) {\n sb.append('ReducedValue(WeekBasedYear,2,2,2000-01-01)');\n } else {\n sb.append('WeekBasedYear,').append(this._count).append(',')\n .append(19).append(',')\n .append((this._count < 4) ? SignStyle.NORMAL : SignStyle.EXCEEDS_PAD);\n }\n } else {\n if (this._letter === 'c' || this._letter === 'e') {\n sb.append('DayOfWeek');\n } else if (this._letter === 'w') {\n sb.append('WeekOfWeekBasedYear');\n } else if (this._letter === 'W') {\n sb.append('WeekOfMonth');\n }\n sb.append(',');\n sb.append(this._count);\n }\n sb.append(')');\n return sb.toString();\n }\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\nimport localeDefault from './plug';\n\nexport default localeDefault;\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n/* eslint-disable no-param-reassign */\n\nimport CldrDateTimeFormatterBuilder from './format/cldr/CldrDateTimeFormatterBuilder';\nimport LocaleDateTimeFormatter from './format/LocaleDateTimeFormatter';\nimport Locale from './Locale';\n\nimport './_init';\n\n/**\n * plugin Function, call using js-jodas use()\n *\n * @param jsJoda\n */\nexport default function (jsJoda) {\n // inject all prototype properties (except constructor) from CldrDateTimeFormatterBuilder into DateTimeFormatterBuilder\n Object.getOwnPropertyNames(CldrDateTimeFormatterBuilder.prototype).forEach((prop) => {\n if (prop !== 'constructor') {\n jsJoda.DateTimeFormatterBuilder.prototype[prop] = CldrDateTimeFormatterBuilder.prototype[prop];\n }\n });\n // inject all prototype properties (except constructor) from LocaleDateTimeFormatter into DateTimeFormatter\n Object.getOwnPropertyNames(LocaleDateTimeFormatter.prototype).forEach((prop) => {\n if (prop !== 'constructor') {\n jsJoda.DateTimeFormatter.prototype[prop] = LocaleDateTimeFormatter.prototype[prop];\n }\n });\n // inject Locale into jsJoda\n jsJoda.Locale = Locale;\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeException,\n DayOfWeek,\n ChronoField,\n ChronoUnit,\n IllegalArgumentException,\n IllegalStateException,\n IsoChronology,\n IsoFields,\n LocalDate,\n ResolverStyle,\n ValueRange,\n Year\n} from 'js-joda';\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nconst { MathUtil, assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n//-----------------------------------------------------------------------\nconst DAY_OF_WEEK_RANGE = ValueRange.of(1, 7);\nconst WEEK_OF_MONTH_RANGE = ValueRange.of(0, 1, 4, 6);\nconst WEEK_OF_YEAR_RANGE = ValueRange.of(0, 1, 52, 54);\nconst WEEK_OF_WEEK_BASED_YEAR_RANGE = ValueRange.of(1, 52, 53);\nconst WEEK_BASED_YEAR_RANGE = ChronoField.YEAR.range();\n\n/* map from the string from cldr `firstDay()` to DayOfWeek */\nconst _weekDayMap = {\n 'mon': DayOfWeek.MONDAY,\n 'tue': DayOfWeek.TUESDAY,\n 'wed': DayOfWeek.WEDNESDAY,\n 'thu': DayOfWeek.THURSDAY,\n 'fri': DayOfWeek.FRIDAY,\n 'sat': DayOfWeek.SATURDAY,\n 'sun': DayOfWeek.SUNDAY,\n};\n\n/**\n * Field type that computes DayOfWeek, WeekOfMonth, and WeekOfYear\n * based on a WeekFields.\n * A separate Field instance is required for each different WeekFields;\n * combination of start of week and minimum number of days.\n * Constructors are provided to create fields for DayOfWeek, WeekOfMonth,\n * and WeekOfYear.\n */\nexport class ComputedDayOfField {\n\n /**\n * Returns a field to access the day of week,\n * computed based on a WeekFields.\n *

\n * The WeekDefintion of the first day of the week is used with\n * the ISO DAY_OF_WEEK field to compute week boundaries.\n */\n static ofDayOfWeekField(weekDef) {\n return new ComputedDayOfField('DayOfWeek', weekDef,\n ChronoUnit.DAYS, ChronoUnit.WEEKS, DAY_OF_WEEK_RANGE);\n }\n\n /**\n * Returns a field to access the week of month,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfMonth()\n */\n static ofWeekOfMonthField(weekDef) {\n return new ComputedDayOfField('WeekOfMonth', weekDef,\n ChronoUnit.WEEKS, ChronoUnit.MONTHS, WEEK_OF_MONTH_RANGE);\n }\n\n /**\n * Returns a field to access the week of year,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfYear()\n */\n static ofWeekOfYearField(weekDef) {\n return new ComputedDayOfField('WeekOfYear', weekDef,\n ChronoUnit.WEEKS, ChronoUnit.YEARS, WEEK_OF_YEAR_RANGE);\n }\n\n /**\n * Returns a field to access the week of week-based-year,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfWeekBasedYear()\n */\n static ofWeekOfWeekBasedYearField(weekDef) {\n return new ComputedDayOfField('WeekOfWeekBasedYear', weekDef,\n ChronoUnit.WEEKS, IsoFields.WEEK_BASED_YEARS, WEEK_OF_WEEK_BASED_YEAR_RANGE);\n }\n\n /**\n * Returns a field to access the week-based-year,\n * computed based on a WeekFields.\n * @see WeekFields#weekBasedYear()\n */\n static ofWeekBasedYearField(weekDef) {\n return new ComputedDayOfField('WeekBasedYear', weekDef,\n IsoFields.WEEK_BASED_YEARS, ChronoUnit.FOREVER, WEEK_BASED_YEAR_RANGE);\n }\n\n /**\n *@private\n */\n constructor(name, weekDef, baseUnit, rangeUnit, range) {\n this._name = name;\n this._weekDef = weekDef;\n this._baseUnit = baseUnit;\n this._rangeUnit = rangeUnit;\n this._range = range;\n }\n\n getFrom(temporal) {\n // Offset the ISO DOW by the start of this week\n const sow = this._weekDef.firstDayOfWeek().value();\n const dow = this._localizedDayOfWeek(temporal, sow);\n\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return dow;\n } else if (this._rangeUnit === ChronoUnit.MONTHS) {\n return this._localizedWeekOfMonth(temporal, dow);\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n return this._localizedWeekOfYear(temporal, dow);\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return this._localizedWOWBY(temporal);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return this._localizedWBY(temporal);\n } else {\n throw new IllegalStateException('unreachable');\n }\n }\n\n _localizedDayOfWeek(temporal, sow) {\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n return MathUtil.floorMod(isoDow - sow, 7) + 1;\n }\n\n _localizedWeekOfMonth(temporal, dow) {\n const dom = temporal.get(ChronoField.DAY_OF_MONTH);\n const offset = this._startOfWeekOffset(dom, dow);\n return ComputedDayOfField._computeWeek(offset, dom);\n }\n\n _localizedWeekOfYear(temporal, dow) {\n const doy = temporal.get(ChronoField.DAY_OF_YEAR);\n const offset = this._startOfWeekOffset(doy, dow);\n return ComputedDayOfField._computeWeek(offset, doy);\n }\n\n _localizedWOWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n const previous = LocalDate.from(temporal).minus(1, ChronoUnit.WEEKS);\n return this._localizedWeekOfYear(previous, dow) + 1;\n } else if (woy >= 53) {\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const year = temporal.get(ChronoField.YEAR);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n return (woy - (weekIndexOfFirstWeekNextYear - 1));\n }\n }\n return woy;\n }\n\n _localizedWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const year = temporal.get(ChronoField.YEAR);\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n return year - 1;\n } else if (woy < 53) {\n return year;\n }\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n return year + 1;\n }\n return year;\n }\n\n /**\n * Returns an offset to align week start with a day of month or day of year.\n *\n * @param day the day; 1 through infinity\n * @param dow the day of the week of that day; 1 through 7\n * @return an offset in days to align a day with the start of the first 'full' week\n */\n _startOfWeekOffset(day, dow) {\n // offset of first day corresponding to the day of week in first 7 days (zero origin)\n const weekStart = MathUtil.floorMod(day - dow, 7);\n let offset = -weekStart;\n if (weekStart + 1 > this._weekDef.minimalDaysInFirstWeek()) {\n // The previous week has the minimum days in the current month to be a 'week'\n offset = 7 - weekStart;\n }\n return offset;\n }\n\n /**\n * Returns the week number computed from the reference day and reference dayOfWeek.\n *\n * @param offset the offset to align a date with the start of week\n * from {@link #startOfWeekOffset}.\n * @param day the day for which to compute the week number\n * @return the week number where zero is used for a partial week and 1 for the first full week\n */\n static _computeWeek(offset, day) {\n return MathUtil.intDiv((7 + offset + (day - 1)), 7);\n }\n\n adjustInto(temporal, newValue) {\n // Check the new value and get the old value of the field\n const newVal = this._range.checkValidIntValue(newValue, this);\n const currentVal = temporal.get(this);\n if (newVal === currentVal) {\n return temporal;\n }\n if (this._rangeUnit === ChronoUnit.FOREVER) {\n // adjust in whole weeks so dow never changes\n const baseWowby = temporal.get(this._weekDef.weekOfWeekBasedYear());\n const diffWeeks = MathUtil.roundDown((newValue - currentVal) * 52.1775);\n let result = temporal.plus(diffWeeks, ChronoUnit.WEEKS);\n if (result.get(this) > newVal) {\n // ended up in later week-based-year\n // move to last week of previous year\n const newWowby = result.get(this._weekDef.weekOfWeekBasedYear());\n result = result.minus(newWowby, ChronoUnit.WEEKS);\n } else {\n if (result.get(this) < newVal) {\n // ended up in earlier week-based-year\n result = result.plus(2, ChronoUnit.WEEKS);\n }\n // reset the week-of-week-based-year\n const newWowby = result.get(this._weekDef.weekOfWeekBasedYear());\n result = result.plus(baseWowby - newWowby, ChronoUnit.WEEKS);\n if (result.get(this) > newVal) {\n result = result.minus(1, ChronoUnit.WEEKS);\n }\n }\n return result;\n }\n // Compute the difference and add that using the base using of the field\n const delta = newVal - currentVal;\n return temporal.plus(delta, this._baseUnit);\n }\n\n resolve(fieldValues, partialTemporal, resolverStyle) {\n const sow = this._weekDef.firstDayOfWeek().value();\n if (this._rangeUnit === ChronoUnit.WEEKS) { // day-of-week\n const value = fieldValues.remove(this);\n const localDow = this._range.checkValidIntValue(value, this);\n const isoDow = MathUtil.floorMod((sow - 1) + (localDow - 1), 7) + 1;\n fieldValues.put(ChronoField.DAY_OF_WEEK, isoDow);\n return null;\n }\n if (fieldValues.containsKey(ChronoField.DAY_OF_WEEK) === false) {\n return null;\n }\n\n // week-based-year\n if (this._rangeUnit === ChronoUnit.FOREVER) {\n if (fieldValues.containsKey(this._weekDef.weekOfWeekBasedYear()) === false) {\n return null;\n }\n // const chrono = IsoChronology.INSTANCE; //TODO: Chronology.from(partialTemporal); // defaults to ISO\n const isoDow = ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(ChronoField.DAY_OF_WEEK));\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const wby = this.range().checkValidIntValue(fieldValues.get(this), this);\n let date;\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n date = LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); //TODO: chrono.date(wby, 1, this._weekDef.minimalDaysInFirstWeek());\n const wowby = fieldValues.get(this._weekDef.weekOfWeekBasedYear());\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = wowby - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n date = LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); //TODO: chrono.date(wby, 1, this._weekDef.minimalDaysInFirstWeek());\n const wowby = this._weekDef.weekOfWeekBasedYear().range().checkValidIntValue(\n fieldValues.get(this._weekDef.weekOfWeekBasedYear()), this._weekDef.weekOfWeekBasedYear);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = wowby - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(this) !== fieldValues.get(this)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different year');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(this._weekDef.weekOfWeekBasedYear());\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n }\n\n if (fieldValues.containsKey(ChronoField.YEAR) === false) {\n return null;\n }\n const isoDow = ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(ChronoField.DAY_OF_WEEK));\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const year = ChronoField.YEAR.checkValidIntValue(fieldValues.get(ChronoField.YEAR));\n // const chrono = IsoChronology.INSTANCE; //TODO: Chronology.from(partialTemporal); // defaults to ISO\n if (this._rangeUnit === ChronoUnit.MONTHS) { // week-of-month\n if (fieldValues.containsKey(ChronoField.MONTH_OF_YEAR) === false) {\n return null;\n }\n const value = fieldValues.remove(this);\n let date;\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n const month = fieldValues.get(ChronoField.MONTH_OF_YEAR);\n date = LocalDate.of(year, 1, 1); // TODO: chrono.date(year, 1, 1);\n date = date.plus(month - 1, ChronoUnit.MONTHS);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = value - this._localizedWeekOfMonth(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n const month = ChronoField.MONTH_OF_YEAR.checkValidIntValue(fieldValues.get(ChronoField.MONTH_OF_YEAR));\n date = LocalDate.of(year, month, 8); // TODO: chrono.date(year, month, 8);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const wom = this._range.checkValidIntValue(value, this);\n const weeks = wom - this._localizedWeekOfMonth(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(ChronoField.MONTH_OF_YEAR) !== fieldValues.get(ChronoField.MONTH_OF_YEAR)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different month');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(ChronoField.YEAR);\n fieldValues.remove(ChronoField.MONTH_OF_YEAR);\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n } else if (this._rangeUnit === ChronoUnit.YEARS) { // week-of-year\n const value = fieldValues.remove(this);\n let date = LocalDate.of(year, 1, 1); // TODO: chrono.date(year, 1, 1);\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = value - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n const dateDow = this._localizedDayOfWeek(date, sow);\n const woy = this._range.checkValidIntValue(value, this);\n const weeks = woy - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(ChronoField.YEAR) !== fieldValues.get(ChronoField.YEAR)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different year');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(ChronoField.YEAR);\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n } else {\n throw new IllegalStateException('unreachable');\n }\n }\n\n //-----------------------------------------------------------------------\n name() {\n return this._name;\n }\n\n baseUnit() {\n return this._baseUnit;\n }\n\n rangeUnit() {\n return this._rangeUnit;\n }\n\n range() {\n return this._range;\n }\n\n //-----------------------------------------------------------------------\n isDateBased() {\n return true;\n }\n\n isTimeBased() {\n return false;\n }\n\n isSupportedBy(temporal) {\n if (temporal.isSupported(ChronoField.DAY_OF_WEEK)) {\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return true;\n } else if (this._rangeUnit === ChronoUnit.MONTHS) {\n return temporal.isSupported(ChronoField.DAY_OF_MONTH);\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n return temporal.isSupported(ChronoField.DAY_OF_YEAR);\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return temporal.isSupported(ChronoField.EPOCH_DAY);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return temporal.isSupported(ChronoField.EPOCH_DAY);\n }\n }\n return false;\n }\n\n rangeRefinedBy(temporal) {\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return this._range;\n }\n\n let field = null;\n if (this._rangeUnit === ChronoUnit.MONTHS) {\n field = ChronoField.DAY_OF_MONTH;\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n field = ChronoField.DAY_OF_YEAR;\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return this._rangeWOWBY(temporal);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return temporal.range(ChronoField.YEAR);\n } else {\n throw new IllegalStateException('unreachable');\n }\n\n // Offset the ISO DOW by the start of this week\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n\n const offset = this._startOfWeekOffset(temporal.get(field), dow);\n const fieldRange = temporal.range(field);\n return ValueRange.of(ComputedDayOfField._computeWeek(offset, fieldRange.minimum()),\n ComputedDayOfField._computeWeek(offset, fieldRange.maximum()));\n }\n\n _rangeWOWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n // TODO: we use IsoChronology for now\n return this._rangeWOWBY(IsoChronology.INSTANCE.date(temporal).minus(2, ChronoUnit.WEEKS));\n // return this._rangeWOWBY(Chronology.from(temporal).date(temporal).minus(2, ChronoUnit.WEEKS));\n }\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const year = temporal.get(ChronoField.YEAR);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n // TODO: we use IsoChronology for now\n return this._rangeWOWBY(IsoChronology.INSTANCE.date(temporal).plus(2, ChronoUnit.WEEKS));\n // return this._rangeWOWBY(Chronology.from(temporal).date(temporal).plus(2, ChronoUnit.WEEKS));\n }\n return ValueRange.of(1, weekIndexOfFirstWeekNextYear - 1);\n }\n\n getDisplayName(locale) {\n requireNonNull(locale, 'locale');\n if (this._rangeUnit === ChronoUnit.YEARS) { // week-of-year\n return 'Week';\n }\n return this.toString();\n }\n\n //-----------------------------------------------------------------------\n toString() {\n return this._name + '[' + this._weekDef.toString() + ']';\n }\n}\n\n/**\n * The cache of rules by firstDayOfWeek plus minimalDays.\n * Initialized first to be available for definition of ISO, etc.\n */\nconst WeekFieldsCache = new Map();\n\n\n/**\n * Localized definitions of the day-of-week, week-of-month and week-of-year fields.\n *

\n * A standard week is seven days long, but cultures have different definitions for some\n * other aspects of a week. This class represents the definition of the week, for the\n * purpose of providing {@link TemporalField} instances.\n *

\n * WeekFields provides three fields,\n * {@link #dayOfWeek()}, {@link #weekOfMonth()}, and {@link #weekOfYear()}\n * that provide access to the values from any {@link Temporal temporal object}.\n *

\n * The computations for day-of-week, week-of-month, and week-of-year are based\n * on the {@link ChronoField#YEAR proleptic-year},\n * {@link ChronoField#MONTH_OF_YEAR month-of-year},\n * {@link ChronoField#DAY_OF_MONTH day-of-month}, and\n * {@link ChronoField#DAY_OF_WEEK ISO day-of-week} which are based on the\n * {@link ChronoField#EPOCH_DAY epoch-day} and the chronology.\n * The values may not be aligned with the {@link ChronoField#YEAR_OF_ERA year-of-Era}\n * depending on the Chronology.\n *

A week is defined by:\n *

    \n *
  • The first day-of-week.\n * For example, the ISO-8601 standard considers Monday to be the first day-of-week.\n *
  • The minimal number of days in the first week.\n * For example, the ISO-8601 standard counts the first week as needing at least 4 days.\n *

\n * Together these two values allow a year or month to be divided into weeks.\n *

\n *

Week of Month

\n * One field is used: week-of-month.\n * The calculation ensures that weeks never overlap a month boundary.\n * The month is divided into periods where each period starts on the defined first day-of-week.\n * The earliest period is referred to as week 0 if it has less than the minimal number of days\n * and week 1 if it has at least the minimal number of days.\n *

\n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n *
Examples of WeekFields
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
2008-12-31WednesdayWeek 5 of December 2008Week 5 of December 2008
2009-01-01ThursdayWeek 1 of January 2009Week 0 of January 2009
2009-01-04SundayWeek 1 of January 2009Week 0 of January 2009
2009-01-05MondayWeek 2 of January 2009Week 1 of January 2009
\n *

\n *

Week of Year

\n * One field is used: week-of-year.\n * The calculation ensures that weeks never overlap a year boundary.\n * The year is divided into periods where each period starts on the defined first day-of-week.\n * The earliest period is referred to as week 0 if it has less than the minimal number of days\n * and week 1 if it has at least the minimal number of days.\n *

\n * This class is immutable and thread-safe.\n */\nexport class WeekFields {\n // implementation notes\n // querying week-of-month or week-of-year should return the week value bound within the month/year\n // however, setting the week value should be lenient (use plus/minus weeks)\n // allow week-of-month outer range [0 to 5]\n // allow week-of-year outer range [0 to 53]\n // this is because callers shouldn't be expected to know the details of validity\n\n /**\n * function overloading for {@link WeekFields#of}\n *\n * if called with 1 arguments then {@link WeekFields.ofLocale} is executed.\n *\n * Otherwise {@link WeekFields.ofFirstDayOfWeekMinDays} is executed.\n *\n * @param {!DayOfWeek | Locale} firstDayOrLocale\n * @param {Number} minDays\n * @returns {WeekFields} this for chaining\n */\n static of(firstDayOrLocale, minDays) {\n if (minDays === undefined) {\n return WeekFields.ofLocale(firstDayOrLocale);\n } else {\n return WeekFields.ofFirstDayOfWeekMinDays(firstDayOrLocale, minDays);\n }\n }\n\n /**\n * Obtains an instance of {@code WeekFields} appropriate for a locale.\n *

\n * This will look up appropriate values from the provider of localization data.\n *\n * @param {!Locale} locale the locale to use, not null\n * @return the week-definition, not null\n */\n static ofLocale(locale) {\n requireNonNull(locale, 'locale');\n\n Cldr.load(cldrData('supplemental/weekData.json'));\n const cldr = new Cldr(locale.localeString());\n const worldRegion = '001';\n const weekData = cldr.get('supplemental/weekData');\n let dow = _weekDayMap[weekData.firstDay[locale.country()]];\n if (!dow) {\n dow = _weekDayMap[weekData.firstDay[worldRegion]];\n }\n let minDays = weekData.minDays[locale.country()];\n if (!minDays) {\n minDays = weekData.minDays[worldRegion];\n }\n return WeekFields.ofFirstDayOfWeekMinDays(dow, minDays);\n }\n\n /**\n * Obtains an instance of {@code WeekFields} from the first day-of-week and minimal days.\n *

\n * The first day-of-week defines the ISO {@code DayOfWeek} that is day 1 of the week.\n * The minimal number of days in the first week defines how many days must be present\n * in a month or year, starting from the first day-of-week, before the week is counted\n * as the first week. A value of 1 will count the first day of the month or year as part\n * of the first week, whereas a value of 7 will require the whole seven days to be in\n * the new month or year.\n *

\n * WeekFields instances are singletons; for each unique combination\n * of {@code firstDayOfWeek} and {@code minimalDaysInFirstWeek} the\n * the same instance will be returned.\n *\n * @param {!DayOfWeek} firstDayOfWeek the first day of the week, not null\n * @param {!Number} minimalDaysInFirstWeek the minimal number of days in the first week, from\n * 1 to 7\n * @return {WeekFields} the week-definition, not null\n * @throws IllegalArgumentException if the minimal days value is less than one\n * or greater than 7\n */\n static ofFirstDayOfWeekMinDays(firstDayOfWeek, minimalDaysInFirstWeek) {\n requireNonNull(firstDayOfWeek, 'firstDayOfWeek');\n requireInstance(firstDayOfWeek, DayOfWeek, 'firstDayOfWeek');\n requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek');\n const key = firstDayOfWeek.toString() + minimalDaysInFirstWeek;\n let rules = WeekFieldsCache.get(key);\n if (rules == null) {\n rules = new WeekFields(firstDayOfWeek, minimalDaysInFirstWeek);\n WeekFieldsCache.set(key, rules);\n rules = WeekFieldsCache.get(key);\n }\n return rules;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Creates an instance of the definition.\n *\n * @param {!DayOfWeek} firstDayOfWeek the first day of the week, not null\n * @param {!Number} minimalDaysInFirstWeek the minimal number of days in the first week, from\n * 1 to 7\n * @throws IllegalArgumentException if the minimal days value is invalid\n *\n * @private\n */\n constructor(firstDayOfWeek, minimalDaysInFirstWeek) {\n requireNonNull(firstDayOfWeek, 'firstDayOfWeek');\n requireInstance(firstDayOfWeek, DayOfWeek, 'firstDayOfWeek');\n requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek');\n if (minimalDaysInFirstWeek < 1 || minimalDaysInFirstWeek > 7) {\n throw new IllegalArgumentException('Minimal number of days is invalid');\n }\n this._firstDayOfWeek = firstDayOfWeek;\n this._minimalDays = minimalDaysInFirstWeek;\n this._dayOfWeek = ComputedDayOfField.ofDayOfWeekField(this);\n this._weekOfMonth = ComputedDayOfField.ofWeekOfMonthField(this);\n this._weekOfYear = ComputedDayOfField.ofWeekOfYearField(this);\n this._weekOfWeekBasedYear = ComputedDayOfField.ofWeekOfWeekBasedYearField(this);\n this._weekBasedYear = ComputedDayOfField.ofWeekBasedYearField(this);\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n }\n\n //-----------------------------------------------------------------------\n /**\n * Gets the first day-of-week.\n *

\n * The first day-of-week varies by culture.\n * For example, the US uses Sunday, while France and the ISO-8601 standard use Monday.\n * This method returns the first day using the standard {@code DayOfWeek} enum.\n *\n * @return {DayOfWeek} the first day-of-week, not null\n */\n firstDayOfWeek() {\n return this._firstDayOfWeek;\n }\n\n /**\n * Gets the minimal number of days in the first week.\n *

\n * The number of days considered to define the first week of a month or year\n * varies by culture.\n * For example, the ISO-8601 requires 4 days (more than half a week) to\n * be present before counting the first week.\n *\n * @return {Number} the minimal number of days in the first week of a month or year, from 1 to 7\n */\n minimalDaysInFirstWeek() {\n return this._minimalDays;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Returns a field to access the day of week based on this {@code WeekFields}.\n *

\n * This is similar to {@link ChronoField#DAY_OF_WEEK} but uses values for\n * the day-of-week based on this {@code WeekFields}.\n * The days are numbered from 1 to 7 where the\n * {@link #getFirstDayOfWeek() first day-of-week} is assigned the value 1.\n *

\n * For example, if the first day-of-week is Sunday, then that will have the\n * value 1, with other days ranging from Monday as 2 to Saturday as 7.\n *

\n * In the resolving phase of parsing, a localized day-of-week will be converted\n * to a standardized {@code ChronoField} day-of-week.\n * The day-of-week must be in the valid range 1 to 7.\n * Other fields in this class build dates using the standardized day-of-week.\n *\n * @return {TemporalField} a field providing access to the day-of-week with localized\n * numbering, not null\n */\n dayOfWeek() {\n return this._dayOfWeek;\n }\n\n /**\n * Returns a field to access the week of month based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the month where weeks\n * start on a fixed day-of-week, such as Monday.\n * This field is typically used with {@link WeekFields#dayOfWeek()}.\n *

\n * Week one (1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the month.\n * Thus, week one may start up to {@code minDays} days before the start of the month.\n * If the first week starts after the start of the month then the period before is week zero\n * (0).\n *

\n * For example:
\n * - if the 1st day of the month is a Monday, week one starts on the 1st and there is no week\n * zero
\n * - if the 2nd day of the month is a Monday, week one starts on the 2nd and the 1st is in week\n * zero
\n * - if the 4th day of the month is a Monday, week one starts on the 4th and the 1st to 3rd is\n * in week zero
\n * - if the 5th day of the month is a Monday, week two starts on the 5th and the 1st to 4th is\n * in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a year,\n * week-of-month, month-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all four fields are\n * validated against their range of valid values. The week-of-month field\n * is validated to ensure that the resulting month is the month requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all four fields are\n * validated against their range of valid values. The week-of-month field\n * is validated from 0 to 6, meaning that the resulting date can be in a\n * different month to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following four stage approach.\n * First, create a date on the first day of the first week of January in the requested year.\n * Then take the month-of-year, subtract one, and add the amount in months to the date.\n * Then take the week-of-month, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-month, not null\n */\n weekOfMonth() {\n return this._weekOfMonth;\n }\n\n /**\n * Returns a field to access the week of year based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the year where weeks\n * start on a fixed day-of-week, such as Monday.\n * This field is typically used with {@link WeekFields#dayOfWeek()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * Thus, week one may start up to {@code minDays} days before the start of the year.\n * If the first week starts after the start of the year then the period before is week zero\n * (0).\n *

\n * For example:
\n * - if the 1st day of the year is a Monday, week one starts on the 1st and there is no week\n * zero
\n * - if the 2nd day of the year is a Monday, week one starts on the 2nd and the 1st is in week\n * zero
\n * - if the 4th day of the year is a Monday, week one starts on the 4th and the 1st to 3rd is\n * in week zero
\n * - if the 5th day of the year is a Monday, week two starts on the 5th and the 1st to 4th is\n * in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting year is the year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated from 0 to 54, meaning that the resulting date can be in a\n * different year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested year.\n * Then take the week-of-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-year, not null\n */\n weekOfYear() {\n return this._weekOfYear;\n }\n\n /**\n * Returns a field to access the week of a week-based-year based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the year where weeks\n * start on a fixed day-of-week, such as Monday and each week belongs to exactly one year.\n * This field is typically used with {@link WeekFields#dayOfWeek()} and\n * {@link WeekFields#weekBasedYear()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * If the first week starts after the start of the year then the period before\n * is in the last week of the previous year.\n *

\n * For example:
\n * - if the 1st day of the year is a Monday, week one starts on the 1st
\n * - if the 2nd day of the year is a Monday, week one starts on the 2nd and\n * the 1st is in the last week of the previous year
\n * - if the 4th day of the year is a Monday, week one starts on the 4th and\n * the 1st to 3rd is in the last week of the previous year
\n * - if the 5th day of the year is a Monday, week two starts on the 5th and\n * the 1st to 4th is in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a week-based-year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting week-based-year is the\n * week-based-year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-week-based-year field\n * is validated from 1 to 53, meaning that the resulting date can be in the\n * following week-based-year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested week-based-year.\n * Then take the week-of-week-based-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-week-based-year, not null\n */\n weekOfWeekBasedYear() {\n return this._weekOfWeekBasedYear;\n }\n\n /**\n * Returns a field to access the year of a week-based-year based on this {@code WeekFields}.\n *

\n * This represents the concept of the year where weeks start on a fixed day-of-week,\n * such as Monday and each week belongs to exactly one year.\n * This field is typically used with {@link WeekFields#dayOfWeek()} and\n * {@link WeekFields#weekOfWeekBasedYear()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * Thus, week one may start before the start of the year.\n * If the first week starts after the start of the year then the period before\n * is in the last week of the previous year.\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a week-based-year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting week-based-year is the\n * week-based-year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-week-based-year field\n * is validated from 1 to 53, meaning that the resulting date can be in the\n * following week-based-year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested week-based-year.\n * Then take the week-of-week-based-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-based-year, not null\n */\n weekBasedYear() {\n return this._weekBasedYear;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Checks if this {@code WeekFields} is equal to the specified object.\n *

\n * The comparison is based on the entire state of the rules, which is\n * the first day-of-week and minimal days.\n *\n * @param {*} object the other rules to compare to, null returns false\n * @return true if this is equal to the specified rules\n */\n equals(object) {\n if (this === object) {\n return true;\n }\n if (object instanceof WeekFields) {\n return this.hashCode() === object.hashCode();\n }\n return false;\n }\n\n /**\n * A hash code for this {@code WeekFields}.\n *\n * @return a suitable hash code\n */\n hashCode() {\n return this._firstDayOfWeek.ordinal() * 7 + this._minimalDays;\n }\n\n //-----------------------------------------------------------------------\n /**\n * A string representation of this {@code WeekFields} instance.\n *\n * @return the string representation, not null\n */\n toString() {\n return 'WeekFields[' + this._firstDayOfWeek + ',' + this._minimalDays + ']';\n }\n\n}\n\nexport function _init() {\n /**\n * The ISO-8601 definition, where a week starts on Monday and the first week\n * has a minimum of 4 days.\n *

\n * The ISO-8601 standard defines a calendar system based on weeks.\n * It uses the week-based-year and week-of-week-based-year concepts to split\n * up the passage of days instead of the standard year/month/day.\n *

\n * Note that the first week may start in the previous calendar year.\n * Note also that the first few days of a calendar year may be in the\n * week-based-year corresponding to the previous calendar year.\n */\n WeekFields.ISO = WeekFields.of(DayOfWeek.MONDAY, 4);\n\n /**\n * The common definition of a week that starts on Sunday.\n *

\n * Defined as starting on Sunday and with a minimum of 1 day in the month.\n * This week definition is in use in the US and other European countries.\n *\n */\n WeekFields.SUNDAY_START = WeekFields.of(DayOfWeek.SUNDAY, 1);\n\n}\n","/*\n * @copyright (c) 2018, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n/* since the npm cldrData load is using `fs` and other modules not available in browser,\n * we define our own cldrData \"load\" function that just `requires` a cldr-data file\n */\n\n/* NOTE: the path is relative to the installed js-joda-locale package and assuming,\n * that cldr-data is installed in parallel!\n */\nmodule.exports = function (cldrPath) {\n return require('../node_modules/cldr-data/' + cldrPath);\n};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_js_joda__;"],"sourceRoot":""} \ No newline at end of file diff --git a/packages/enUS/dist/index.js b/packages/en-us/dist/index.js similarity index 100% rename from packages/enUS/dist/index.js rename to packages/en-us/dist/index.js diff --git a/packages/enUS/dist/index.js.map b/packages/en-us/dist/index.js.map similarity index 100% rename from packages/enUS/dist/index.js.map rename to packages/en-us/dist/index.js.map diff --git a/packages/enUS/package.json b/packages/en-us/package.json similarity index 95% rename from packages/enUS/package.json rename to packages/en-us/package.json index d800ca1..a8c21c2 100644 --- a/packages/enUS/package.json +++ b/packages/en-us/package.json @@ -1,5 +1,5 @@ { - "name": "js-joda-locale_enUS", + "name": "js-joda-locale_en-us", "version": "1.1.0-pre2+32.0.1", "description": "prebuilt js-joda-locale package for locales: en,en-US", "repository": { diff --git a/packages/itIT/package.json b/packages/it-it/package.json similarity index 95% rename from packages/itIT/package.json rename to packages/it-it/package.json index 8a5cc4d..a187aa2 100644 --- a/packages/itIT/package.json +++ b/packages/it-it/package.json @@ -1,5 +1,5 @@ { - "name": "js-joda-locale_itIT", + "name": "js-joda-locale_it-it", "version": "1.1.0-pre2+32.0.1", "description": "prebuilt js-joda-locale package for locales: it,it-IT", "repository": { diff --git a/packages/itIT/dist/index.js b/packages/itIT/dist/index.js deleted file mode 100644 index 09903ed..0000000 --- a/packages/itIT/dist/index.js +++ /dev/null @@ -1,3844 +0,0 @@ -//! @version js-joda-locale - 1.1.0-pre2+32.0.1 -//! @copyright (c) 2015-2016, Philipp Thürwächter, Pattrick Hüper & js-joda contributors -//! @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos -//! @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(require("js-joda")); - else if(typeof define === 'function' && define.amd) - define(["js-joda"], factory); - else if(typeof exports === 'object') - exports["JSJodaLocale"] = factory(require("js-joda")); - else - root["JSJodaLocale"] = factory(root["JSJoda"]); -})(this, function(__WEBPACK_EXTERNAL_MODULE_js_joda__) { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = "./src/js-joda-locale.js"); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ "./node_modules/cldr-data sync recursive ^\\.\\/.*$": -/*!**********************************************!*\ - !*** ./node_modules/cldr-data sync ^\.\/.*$ ***! - \**********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var map = { - "./availableLocales.json": "./node_modules/cldr-data/availableLocales.json", - "./main/it/ca-gregorian.json": "./node_modules/cldr-data/main/it/ca-gregorian.json", - "./main/it/timeZoneNames.json": "./node_modules/cldr-data/main/it/timeZoneNames.json", - "./supplemental/likelySubtags.json": "./node_modules/cldr-data/supplemental/likelySubtags.json", - "./supplemental/metaZones.json": "./node_modules/cldr-data/supplemental/metaZones.json", - "./supplemental/weekData.json": "./node_modules/cldr-data/supplemental/weekData.json" -}; - - -function webpackContext(req) { - var id = webpackContextResolve(req); - var module = __webpack_require__(id); - return module; -} -function webpackContextResolve(req) { - var id = map[req]; - if(!(id + 1)) { // check for number or string - var e = new Error('Cannot find module "' + req + '".'); - e.code = 'MODULE_NOT_FOUND'; - throw e; - } - return id; -} -webpackContext.keys = function webpackContextKeys() { - return Object.keys(map); -}; -webpackContext.resolve = webpackContextResolve; -module.exports = webpackContext; -webpackContext.id = "./node_modules/cldr-data sync recursive ^\\.\\/.*$"; - -/***/ }), - -/***/ "./node_modules/cldr-data/availableLocales.json": -/*!******************************************************!*\ - !*** ./node_modules/cldr-data/availableLocales.json ***! - \******************************************************/ -/*! exports provided: availableLocales, default */ -/***/ (function(module) { - -module.exports = {"availableLocales":["af","af-NA","am","ar","ar-AE","ar-BH","ar-DJ","ar-DZ","ar-EG","ar-EH","ar-ER","ar-IL","ar-IQ","ar-JO","ar-KM","ar-KW","ar-LB","ar-LY","ar-MA","ar-MR","ar-OM","ar-PS","ar-QA","ar-SA","ar-SD","ar-SO","ar-SS","ar-SY","ar-TD","ar-TN","ar-YE","az","az-Latn","be","bg","bn","bn-IN","bs","bs-Latn","ca","ca-AD","ca-ES-VALENCIA","ca-FR","ca-IT","cs","cy","da","da-GL","de","de-AT","de-BE","de-CH","de-IT","de-LI","de-LU","el","el-CY","en","en-001","en-150","en-AG","en-AI","en-AS","en-AT","en-AU","en-BB","en-BE","en-BI","en-BM","en-BS","en-BW","en-BZ","en-CA","en-CC","en-CH","en-CK","en-CM","en-CX","en-CY","en-DE","en-DG","en-DK","en-DM","en-ER","en-FI","en-FJ","en-FK","en-FM","en-GB","en-GD","en-GG","en-GH","en-GI","en-GM","en-GU","en-GY","en-HK","en-IE","en-IL","en-IM","en-IN","en-IO","en-JE","en-JM","en-KE","en-KI","en-KN","en-KY","en-LC","en-LR","en-LS","en-MG","en-MH","en-MO","en-MP","en-MS","en-MT","en-MU","en-MW","en-MY","en-NA","en-NF","en-NG","en-NL","en-NR","en-NU","en-NZ","en-PG","en-PH","en-PK","en-PN","en-PR","en-PW","en-RW","en-SB","en-SC","en-SD","en-SE","en-SG","en-SH","en-SI","en-SL","en-SS","en-SX","en-SZ","en-TC","en-TK","en-TO","en-TT","en-TV","en-TZ","en-UG","en-UM","en-US-POSIX","en-VC","en-VG","en-VI","en-VU","en-WS","en-ZA","en-ZM","en-ZW","es","es-419","es-AR","es-BO","es-BR","es-BZ","es-CL","es-CO","es-CR","es-CU","es-DO","es-EA","es-EC","es-GQ","es-GT","es-HN","es-IC","es-MX","es-NI","es-PA","es-PE","es-PH","es-PR","es-PY","es-SV","es-US","es-UY","es-VE","et","eu","fa","fa-AF","fi","fil","fo","fo-DK","fr","fr-BE","fr-BF","fr-BI","fr-BJ","fr-BL","fr-CA","fr-CD","fr-CF","fr-CG","fr-CH","fr-CI","fr-CM","fr-DJ","fr-DZ","fr-GA","fr-GF","fr-GN","fr-GP","fr-GQ","fr-HT","fr-KM","fr-LU","fr-MA","fr-MC","fr-MF","fr-MG","fr-ML","fr-MQ","fr-MR","fr-MU","fr-NC","fr-NE","fr-PF","fr-PM","fr-RE","fr-RW","fr-SC","fr-SN","fr-SY","fr-TD","fr-TG","fr-TN","fr-VU","fr-WF","fr-YT","ga","gl","gu","he","hi","hr","hr-BA","hu","hy","id","is","it","it-CH","it-SM","it-VA","ja","ka","kk","km","kn","ko","ko-KP","ky","lo","lt","lv","mk","ml","mn","mr","ms","ms-BN","ms-SG","my","nb","nb-SJ","ne","ne-IN","nl","nl-AW","nl-BE","nl-BQ","nl-CW","nl-SR","nl-SX","pa","pa-Guru","pl","pt","pt-AO","pt-CH","pt-CV","pt-GQ","pt-GW","pt-LU","pt-MO","pt-MZ","pt-PT","pt-ST","pt-TL","ro","ro-MD","root","ru","ru-BY","ru-KG","ru-KZ","ru-MD","ru-UA","si","sk","sl","sq","sq-MK","sq-XK","sr","sr-Cyrl","sr-Cyrl-BA","sr-Cyrl-ME","sr-Cyrl-XK","sr-Latn","sr-Latn-BA","sr-Latn-ME","sr-Latn-XK","sv","sv-AX","sv-FI","sw","sw-CD","sw-KE","sw-UG","ta","ta-LK","ta-MY","ta-SG","te","th","to","tr","tr-CY","uk","ur","ur-IN","uz","uz-Latn","vi","yue-Hant","zh","zh-Hans","zh-Hans-HK","zh-Hans-MO","zh-Hans-SG","zh-Hant","zh-Hant-HK","zh-Hant-MO","zu"]}; - -/***/ }), - -/***/ "./node_modules/cldr-data/main/it/ca-gregorian.json": -/*!**********************************************************!*\ - !*** ./node_modules/cldr-data/main/it/ca-gregorian.json ***! - \**********************************************************/ -/*! exports provided: main, default */ -/***/ (function(module) { - -module.exports = {"main":{"it":{"identity":{"version":{"_number":"$Revision: 13701 $","_cldrVersion":"32"},"language":"it"},"dates":{"calendars":{"gregorian":{"months":{"format":{"abbreviated":{"1":"gen","2":"feb","3":"mar","4":"apr","5":"mag","6":"giu","7":"lug","8":"ago","9":"set","10":"ott","11":"nov","12":"dic"},"narrow":{"1":"G","2":"F","3":"M","4":"A","5":"M","6":"G","7":"L","8":"A","9":"S","10":"O","11":"N","12":"D"},"wide":{"1":"gennaio","2":"febbraio","3":"marzo","4":"aprile","5":"maggio","6":"giugno","7":"luglio","8":"agosto","9":"settembre","10":"ottobre","11":"novembre","12":"dicembre"}},"stand-alone":{"abbreviated":{"1":"gen","2":"feb","3":"mar","4":"apr","5":"mag","6":"giu","7":"lug","8":"ago","9":"set","10":"ott","11":"nov","12":"dic"},"narrow":{"1":"G","2":"F","3":"M","4":"A","5":"M","6":"G","7":"L","8":"A","9":"S","10":"O","11":"N","12":"D"},"wide":{"1":"gennaio","2":"febbraio","3":"marzo","4":"aprile","5":"maggio","6":"giugno","7":"luglio","8":"agosto","9":"settembre","10":"ottobre","11":"novembre","12":"dicembre"}}},"days":{"format":{"abbreviated":{"sun":"dom","mon":"lun","tue":"mar","wed":"mer","thu":"gio","fri":"ven","sat":"sab"},"narrow":{"sun":"D","mon":"L","tue":"M","wed":"M","thu":"G","fri":"V","sat":"S"},"short":{"sun":"dom","mon":"lun","tue":"mar","wed":"mer","thu":"gio","fri":"ven","sat":"sab"},"wide":{"sun":"domenica","mon":"lunedì","tue":"martedì","wed":"mercoledì","thu":"giovedì","fri":"venerdì","sat":"sabato"}},"stand-alone":{"abbreviated":{"sun":"dom","mon":"lun","tue":"mar","wed":"mer","thu":"gio","fri":"ven","sat":"sab"},"narrow":{"sun":"D","mon":"L","tue":"M","wed":"M","thu":"G","fri":"V","sat":"S"},"short":{"sun":"dom","mon":"lun","tue":"mar","wed":"mer","thu":"gio","fri":"ven","sat":"sab"},"wide":{"sun":"domenica","mon":"lunedì","tue":"martedì","wed":"mercoledì","thu":"giovedì","fri":"venerdì","sat":"sabato"}}},"quarters":{"format":{"abbreviated":{"1":"T1","2":"T2","3":"T3","4":"T4"},"narrow":{"1":"1","2":"2","3":"3","4":"4"},"wide":{"1":"1º trimestre","2":"2º trimestre","3":"3º trimestre","4":"4º trimestre"}},"stand-alone":{"abbreviated":{"1":"T1","2":"T2","3":"T3","4":"T4"},"narrow":{"1":"1","2":"2","3":"3","4":"4"},"wide":{"1":"1º trimestre","2":"2º trimestre","3":"3º trimestre","4":"4º trimestre"}}},"dayPeriods":{"format":{"abbreviated":{"midnight":"mezzanotte","am":"AM","noon":"mezzogiorno","pm":"PM","morning1":"di mattina","afternoon1":"del pomeriggio","evening1":"di sera","night1":"di notte"},"narrow":{"midnight":"mezzanotte","am":"m.","noon":"mezzogiorno","pm":"p.","morning1":"di mattina","afternoon1":"del pomeriggio","evening1":"di sera","night1":"di notte"},"wide":{"midnight":"mezzanotte","am":"AM","noon":"mezzogiorno","pm":"PM","morning1":"di mattina","afternoon1":"del pomeriggio","evening1":"di sera","night1":"di notte"}},"stand-alone":{"abbreviated":{"midnight":"mezzanotte","am":"AM","noon":"mezzogiorno","pm":"PM","morning1":"mattina","afternoon1":"pomeriggio","evening1":"sera","night1":"notte"},"narrow":{"midnight":"mezzanotte","am":"m.","noon":"mezzogiorno","pm":"p.","morning1":"mattina","afternoon1":"pomeriggio","evening1":"sera","night1":"notte"},"wide":{"midnight":"mezzanotte","am":"AM","noon":"mezzogiorno","pm":"PM","morning1":"mattina","afternoon1":"pomeriggio","evening1":"sera","night1":"notte"}}},"eras":{"eraNames":{"0":"avanti Cristo","1":"dopo Cristo","0-alt-variant":"avanti Era Volgare","1-alt-variant":"Era Volgare"},"eraAbbr":{"0":"a.C.","1":"d.C.","0-alt-variant":"a.E.V.","1-alt-variant":"E.V."},"eraNarrow":{"0":"aC","1":"dC","0-alt-variant":"BCE","1-alt-variant":"CE"}},"dateFormats":{"full":"EEEE d MMMM y","long":"d MMMM y","medium":"d MMM y","short":"dd/MM/yy"},"timeFormats":{"full":"HH:mm:ss zzzz","long":"HH:mm:ss z","medium":"HH:mm:ss","short":"HH:mm"},"dateTimeFormats":{"full":"{1} {0}","long":"{1} {0}","medium":"{1}, {0}","short":"{1}, {0}","availableFormats":{"Bh":"h B","Bhm":"h:mm B","Bhms":"h:mm:ss B","d":"d","E":"ccc","EBhm":"E h:mm B","EBhms":"E h:mm:ss B","Ed":"E d","Ehm":"E h:mm a","EHm":"E HH:mm","Ehms":"E h:mm:ss a","EHms":"E HH:mm:ss","Gy":"y G","GyMMM":"MMM y G","GyMMMd":"d MMM y G","GyMMMEd":"E d MMM y G","h":"h a","H":"HH","hm":"h:mm a","Hm":"HH:mm","hms":"h:mm:ss a","Hms":"HH:mm:ss","hmsv":"h:mm:ss a v","Hmsv":"HH:mm:ss v","hmv":"h:mm a v","Hmv":"HH:mm v","M":"L","Md":"d/M","MEd":"E d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"E d MMM","MMMMd":"d MMMM","MMMMW-count-one":"'settimana' W 'di' MMM","MMMMW-count-other":"'settimana' W 'di' MMM","ms":"mm:ss","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"E d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"E d MMM y","yMMMM":"MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","yw-count-one":"'settimana' w 'del' Y","yw-count-other":"'settimana' w 'del' Y"},"appendItems":{"Day":"{0} ({2}: {1})","Day-Of-Week":"{0} {1}","Era":"{1} {0}","Hour":"{0} ({2}: {1})","Minute":"{0} ({2}: {1})","Month":"{0} ({2}: {1})","Quarter":"{0} ({2}: {1})","Second":"{0} ({2}: {1})","Timezone":"{0} {1}","Week":"{0} ({2}: {1})","Year":"{1} {0}"},"intervalFormats":{"intervalFormatFallback":"{0} - {1}","d":{"d":"d–d"},"h":{"a":"h a – h a","h":"h–h a"},"H":{"H":"HH–HH"},"hm":{"a":"h:mm a – h:mm a","h":"h:mm–h:mm a","m":"h:mm–h:mm a"},"Hm":{"H":"HH:mm–HH:mm","m":"HH:mm–HH:mm"},"hmv":{"a":"h:mm a – h:mm a v","h":"h:mm–h:mm a v","m":"h:mm–h:mm a v"},"Hmv":{"H":"HH:mm–HH:mm v","m":"HH:mm–HH:mm v"},"hv":{"a":"h a – h a v","h":"h–h a v"},"Hv":{"H":"HH–HH v"},"M":{"M":"M–M"},"Md":{"d":"dd/MM – dd/MM","M":"dd/MM – dd/MM"},"MEd":{"d":"E dd/MM – E dd/MM","M":"E dd/MM – E dd/MM"},"MMM":{"M":"MMM–MMM"},"MMMd":{"d":"dd–dd MMM","M":"dd MMM – dd MMM"},"MMMEd":{"d":"E dd – E dd MMM","M":"E dd MMM – E dd MMM"},"y":{"y":"y–y"},"yM":{"M":"MM/y – MM/y","y":"MM/y – MM/y"},"yMd":{"d":"dd/MM/y – dd/MM/y","M":"dd/MM/y – dd/MM/y","y":"dd/MM/y – dd/MM/y"},"yMEd":{"d":"E dd/MM/y – E dd/MM/y","M":"E dd/MM/y – E dd/MM/y","y":"E dd/MM/y – E dd/MM/y"},"yMMM":{"M":"MMM–MMM y","y":"MMM y – MMM y"},"yMMMd":{"d":"dd–dd MMM y","M":"dd MMM – dd MMM y","y":"dd MMM y – dd MMM y"},"yMMMEd":{"d":"E d – E d MMM y","M":"E d MMM – E d MMM y","y":"E d MMM y – E d MMM y"},"yMMMM":{"M":"MMMM–MMMM y","y":"MMMM y – MMMM y"}}}}}}}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/main/it/timeZoneNames.json": -/*!***********************************************************!*\ - !*** ./node_modules/cldr-data/main/it/timeZoneNames.json ***! - \***********************************************************/ -/*! exports provided: main, default */ -/***/ (function(module) { - -module.exports = {"main":{"it":{"identity":{"version":{"_number":"$Revision: 13701 $","_cldrVersion":"32"},"language":"it"},"dates":{"timeZoneNames":{"hourFormat":"+HH:mm;-HH:mm","gmtFormat":"GMT{0}","gmtZeroFormat":"GMT","regionFormat":"Ora {0}","regionFormat-type-daylight":"Ora legale: {0}","regionFormat-type-standard":"Ora standard: {0}","fallbackFormat":"{1} ({0})","zone":{"America":{"Adak":{"exemplarCity":"Adak"},"Anchorage":{"exemplarCity":"Anchorage"},"Anguilla":{"exemplarCity":"Anguilla"},"Antigua":{"exemplarCity":"Antigua"},"Araguaina":{"exemplarCity":"Araguaina"},"Argentina":{"Rio_Gallegos":{"exemplarCity":"Rio Gallegos"},"San_Juan":{"exemplarCity":"San Juan"},"Ushuaia":{"exemplarCity":"Ushuaia"},"La_Rioja":{"exemplarCity":"La Rioja"},"San_Luis":{"exemplarCity":"San Luis"},"Salta":{"exemplarCity":"Salta"},"Tucuman":{"exemplarCity":"Tucumán"}},"Aruba":{"exemplarCity":"Aruba"},"Asuncion":{"exemplarCity":"Asunción"},"Bahia":{"exemplarCity":"Bahia"},"Bahia_Banderas":{"exemplarCity":"Bahía de Banderas"},"Barbados":{"exemplarCity":"Barbados"},"Belem":{"exemplarCity":"Belem"},"Belize":{"exemplarCity":"Belize"},"Blanc-Sablon":{"exemplarCity":"Blanc-Sablon"},"Boa_Vista":{"exemplarCity":"Boa Vista"},"Bogota":{"exemplarCity":"Bogotá"},"Boise":{"exemplarCity":"Boise"},"Buenos_Aires":{"exemplarCity":"Buenos Aires"},"Cambridge_Bay":{"exemplarCity":"Cambridge Bay"},"Campo_Grande":{"exemplarCity":"Campo Grande"},"Cancun":{"exemplarCity":"Cancún"},"Caracas":{"exemplarCity":"Caracas"},"Catamarca":{"exemplarCity":"Catamarca"},"Cayenne":{"exemplarCity":"Caienna"},"Cayman":{"exemplarCity":"Cayman"},"Chicago":{"exemplarCity":"Chicago"},"Chihuahua":{"exemplarCity":"Chihuahua"},"Coral_Harbour":{"exemplarCity":"Atikokan"},"Cordoba":{"exemplarCity":"Cordoba"},"Costa_Rica":{"exemplarCity":"Costa Rica"},"Creston":{"exemplarCity":"Creston"},"Cuiaba":{"exemplarCity":"Cuiaba"},"Curacao":{"exemplarCity":"Curaçao"},"Danmarkshavn":{"exemplarCity":"Danmarkshavn"},"Dawson":{"exemplarCity":"Dawson"},"Dawson_Creek":{"exemplarCity":"Dawson Creek"},"Denver":{"exemplarCity":"Denver"},"Detroit":{"exemplarCity":"Detroit"},"Dominica":{"exemplarCity":"Dominica"},"Edmonton":{"exemplarCity":"Edmonton"},"Eirunepe":{"exemplarCity":"Eirunepe"},"El_Salvador":{"exemplarCity":"El Salvador"},"Fort_Nelson":{"exemplarCity":"Fort Nelson"},"Fortaleza":{"exemplarCity":"Fortaleza"},"Glace_Bay":{"exemplarCity":"Glace Bay"},"Godthab":{"exemplarCity":"Nuuk"},"Goose_Bay":{"exemplarCity":"Goose Bay"},"Grand_Turk":{"exemplarCity":"Grand Turk"},"Grenada":{"exemplarCity":"Grenada"},"Guadeloupe":{"exemplarCity":"Guadalupa"},"Guatemala":{"exemplarCity":"Guatemala"},"Guayaquil":{"exemplarCity":"Guayaquil"},"Guyana":{"exemplarCity":"Guyana"},"Halifax":{"exemplarCity":"Halifax"},"Havana":{"exemplarCity":"L’Avana"},"Hermosillo":{"exemplarCity":"Hermosillo"},"Indiana":{"Vincennes":{"exemplarCity":"Vincennes, Indiana"},"Petersburg":{"exemplarCity":"Petersburg, Indiana"},"Tell_City":{"exemplarCity":"Tell City, Indiana"},"Knox":{"exemplarCity":"Knox, Indiana"},"Winamac":{"exemplarCity":"Winamac, Indiana"},"Marengo":{"exemplarCity":"Marengo, Indiana"},"Vevay":{"exemplarCity":"Vevay, Indiana"}},"Indianapolis":{"exemplarCity":"Indianapolis"},"Inuvik":{"exemplarCity":"Inuvik"},"Iqaluit":{"exemplarCity":"Iqaluit"},"Jamaica":{"exemplarCity":"Giamaica"},"Jujuy":{"exemplarCity":"Jujuy"},"Juneau":{"exemplarCity":"Juneau"},"Kentucky":{"Monticello":{"exemplarCity":"Monticello, Kentucky"}},"Kralendijk":{"exemplarCity":"Kralendijk"},"La_Paz":{"exemplarCity":"La Paz"},"Lima":{"exemplarCity":"Lima"},"Los_Angeles":{"exemplarCity":"Los Angeles"},"Louisville":{"exemplarCity":"Louisville"},"Lower_Princes":{"exemplarCity":"Lower Prince’s Quarter"},"Maceio":{"exemplarCity":"Maceio"},"Managua":{"exemplarCity":"Managua"},"Manaus":{"exemplarCity":"Manaus"},"Marigot":{"exemplarCity":"Marigot"},"Martinique":{"exemplarCity":"Martinica"},"Matamoros":{"exemplarCity":"Matamoros"},"Mazatlan":{"exemplarCity":"Mazatlan"},"Mendoza":{"exemplarCity":"Mendoza"},"Menominee":{"exemplarCity":"Menominee"},"Merida":{"exemplarCity":"Mérida"},"Metlakatla":{"exemplarCity":"Metlakatla"},"Mexico_City":{"exemplarCity":"Città del Messico"},"Miquelon":{"exemplarCity":"Miquelon"},"Moncton":{"exemplarCity":"Moncton"},"Monterrey":{"exemplarCity":"Monterrey"},"Montevideo":{"exemplarCity":"Montevideo"},"Montserrat":{"exemplarCity":"Montserrat"},"Nassau":{"exemplarCity":"Nassau"},"New_York":{"exemplarCity":"New York"},"Nipigon":{"exemplarCity":"Nipigon"},"Nome":{"exemplarCity":"Nome"},"Noronha":{"exemplarCity":"Noronha"},"North_Dakota":{"Beulah":{"exemplarCity":"Beulah, Dakota del nord"},"New_Salem":{"exemplarCity":"New Salem, Dakota del nord"},"Center":{"exemplarCity":"Center, Dakota del nord"}},"Ojinaga":{"exemplarCity":"Ojinaga"},"Panama":{"exemplarCity":"Panamá"},"Pangnirtung":{"exemplarCity":"Pangnirtung"},"Paramaribo":{"exemplarCity":"Paramaribo"},"Phoenix":{"exemplarCity":"Phoenix"},"Port-au-Prince":{"exemplarCity":"Port-au-Prince"},"Port_of_Spain":{"exemplarCity":"Port of Spain"},"Porto_Velho":{"exemplarCity":"Porto Velho"},"Puerto_Rico":{"exemplarCity":"Portorico"},"Punta_Arenas":{"exemplarCity":"Punta Arenas"},"Rainy_River":{"exemplarCity":"Rainy River"},"Rankin_Inlet":{"exemplarCity":"Rankin Inlet"},"Recife":{"exemplarCity":"Recife"},"Regina":{"exemplarCity":"Regina"},"Resolute":{"exemplarCity":"Resolute"},"Rio_Branco":{"exemplarCity":"Rio Branco"},"Santa_Isabel":{"exemplarCity":"Santa Isabel"},"Santarem":{"exemplarCity":"Santarém"},"Santiago":{"exemplarCity":"Santiago"},"Santo_Domingo":{"exemplarCity":"Santo Domingo"},"Sao_Paulo":{"exemplarCity":"San Paolo"},"Scoresbysund":{"exemplarCity":"Ittoqqortoormiit"},"Sitka":{"exemplarCity":"Sitka"},"St_Barthelemy":{"exemplarCity":"Saint-Barthélemy"},"St_Johns":{"exemplarCity":"St. John’s"},"St_Kitts":{"exemplarCity":"St. Kitts"},"St_Lucia":{"exemplarCity":"Santa Lucia"},"St_Thomas":{"exemplarCity":"Saint Thomas"},"St_Vincent":{"exemplarCity":"Saint Vincent"},"Swift_Current":{"exemplarCity":"Swift Current"},"Tegucigalpa":{"exemplarCity":"Tegucigalpa"},"Thule":{"exemplarCity":"Thule"},"Thunder_Bay":{"exemplarCity":"Thunder Bay"},"Tijuana":{"exemplarCity":"Tijuana"},"Toronto":{"exemplarCity":"Toronto"},"Tortola":{"exemplarCity":"Tortola"},"Vancouver":{"exemplarCity":"Vancouver"},"Whitehorse":{"exemplarCity":"Whitehorse"},"Winnipeg":{"exemplarCity":"Winnipeg"},"Yakutat":{"exemplarCity":"Yakutat"},"Yellowknife":{"exemplarCity":"Yellowknife"}},"Atlantic":{"Azores":{"exemplarCity":"Azzorre"},"Bermuda":{"exemplarCity":"Bermuda"},"Canary":{"exemplarCity":"Canarie"},"Cape_Verde":{"exemplarCity":"Capo Verde"},"Faeroe":{"exemplarCity":"Isole Fær Øer"},"Madeira":{"exemplarCity":"Madeira"},"Reykjavik":{"exemplarCity":"Reykjavík"},"South_Georgia":{"exemplarCity":"Georgia del Sud"},"St_Helena":{"exemplarCity":"Sant’Elena"},"Stanley":{"exemplarCity":"Stanley"}},"Europe":{"Amsterdam":{"exemplarCity":"Amsterdam"},"Andorra":{"exemplarCity":"Andorra"},"Astrakhan":{"exemplarCity":"Astrakhan"},"Athens":{"exemplarCity":"Atene"},"Belgrade":{"exemplarCity":"Belgrado"},"Berlin":{"exemplarCity":"Berlino"},"Bratislava":{"exemplarCity":"Bratislava"},"Brussels":{"exemplarCity":"Bruxelles"},"Bucharest":{"exemplarCity":"Bucarest"},"Budapest":{"exemplarCity":"Budapest"},"Busingen":{"exemplarCity":"Büsingen"},"Chisinau":{"exemplarCity":"Chisinau"},"Copenhagen":{"exemplarCity":"Copenaghen"},"Dublin":{"long":{"daylight":"Ora legale dell’Irlanda"},"exemplarCity":"Dublino"},"Gibraltar":{"exemplarCity":"Gibilterra"},"Guernsey":{"exemplarCity":"Guernsey"},"Helsinki":{"exemplarCity":"Helsinki"},"Isle_of_Man":{"exemplarCity":"Isola di Man"},"Istanbul":{"exemplarCity":"Istanbul"},"Jersey":{"exemplarCity":"Jersey"},"Kaliningrad":{"exemplarCity":"Kaliningrad"},"Kiev":{"exemplarCity":"Kiev"},"Kirov":{"exemplarCity":"Kirov"},"Lisbon":{"exemplarCity":"Lisbona"},"Ljubljana":{"exemplarCity":"Lubiana"},"London":{"long":{"daylight":"Ora legale del Regno Unito"},"exemplarCity":"Londra"},"Luxembourg":{"exemplarCity":"Lussemburgo"},"Madrid":{"exemplarCity":"Madrid"},"Malta":{"exemplarCity":"Malta"},"Mariehamn":{"exemplarCity":"Mariehamn"},"Minsk":{"exemplarCity":"Minsk"},"Monaco":{"exemplarCity":"Monaco"},"Moscow":{"exemplarCity":"Mosca"},"Oslo":{"exemplarCity":"Oslo"},"Paris":{"exemplarCity":"Parigi"},"Podgorica":{"exemplarCity":"Podgorica"},"Prague":{"exemplarCity":"Praga"},"Riga":{"exemplarCity":"Riga"},"Rome":{"exemplarCity":"Roma"},"Samara":{"exemplarCity":"Samara"},"San_Marino":{"exemplarCity":"San Marino"},"Sarajevo":{"exemplarCity":"Sarajevo"},"Saratov":{"exemplarCity":"Saratov"},"Simferopol":{"exemplarCity":"Sinferopoli"},"Skopje":{"exemplarCity":"Skopje"},"Sofia":{"exemplarCity":"Sofia"},"Stockholm":{"exemplarCity":"Stoccolma"},"Tallinn":{"exemplarCity":"Tallinn"},"Tirane":{"exemplarCity":"Tirana"},"Ulyanovsk":{"exemplarCity":"Ulyanovsk"},"Uzhgorod":{"exemplarCity":"Užhorod"},"Vaduz":{"exemplarCity":"Vaduz"},"Vatican":{"exemplarCity":"Città del Vaticano"},"Vienna":{"exemplarCity":"Vienna"},"Vilnius":{"exemplarCity":"Vilnius"},"Volgograd":{"exemplarCity":"Volgograd"},"Warsaw":{"exemplarCity":"Varsavia"},"Zagreb":{"exemplarCity":"Zagabria"},"Zaporozhye":{"exemplarCity":"Zaporozhye"},"Zurich":{"exemplarCity":"Zurigo"}},"Africa":{"Abidjan":{"exemplarCity":"Abidjan"},"Accra":{"exemplarCity":"Accra"},"Addis_Ababa":{"exemplarCity":"Addis Abeba"},"Algiers":{"exemplarCity":"Algeri"},"Asmera":{"exemplarCity":"Asmara"},"Bamako":{"exemplarCity":"Bamako"},"Bangui":{"exemplarCity":"Bangui"},"Banjul":{"exemplarCity":"Banjul"},"Bissau":{"exemplarCity":"Bissau"},"Blantyre":{"exemplarCity":"Blantyre"},"Brazzaville":{"exemplarCity":"Brazzaville"},"Bujumbura":{"exemplarCity":"Bujumbura"},"Cairo":{"exemplarCity":"Il Cairo"},"Casablanca":{"exemplarCity":"Casablanca"},"Ceuta":{"exemplarCity":"Ceuta"},"Conakry":{"exemplarCity":"Conakry"},"Dakar":{"exemplarCity":"Dakar"},"Dar_es_Salaam":{"exemplarCity":"Dar es Salaam"},"Djibouti":{"exemplarCity":"Gibuti"},"Douala":{"exemplarCity":"Douala"},"El_Aaiun":{"exemplarCity":"El Ayun"},"Freetown":{"exemplarCity":"Freetown"},"Gaborone":{"exemplarCity":"Gaborone"},"Harare":{"exemplarCity":"Harare"},"Johannesburg":{"exemplarCity":"Johannesburg"},"Juba":{"exemplarCity":"Giuba"},"Kampala":{"exemplarCity":"Kampala"},"Khartoum":{"exemplarCity":"Khartum"},"Kigali":{"exemplarCity":"Kigali"},"Kinshasa":{"exemplarCity":"Kinshasa"},"Lagos":{"exemplarCity":"Lagos"},"Libreville":{"exemplarCity":"Libreville"},"Lome":{"exemplarCity":"Lomé"},"Luanda":{"exemplarCity":"Luanda"},"Lubumbashi":{"exemplarCity":"Lubumbashi"},"Lusaka":{"exemplarCity":"Lusaka"},"Malabo":{"exemplarCity":"Malabo"},"Maputo":{"exemplarCity":"Maputo"},"Maseru":{"exemplarCity":"Maseru"},"Mbabane":{"exemplarCity":"Mbabane"},"Mogadishu":{"exemplarCity":"Mogadiscio"},"Monrovia":{"exemplarCity":"Monrovia"},"Nairobi":{"exemplarCity":"Nairobi"},"Ndjamena":{"exemplarCity":"N’Djamena"},"Niamey":{"exemplarCity":"Niamey"},"Nouakchott":{"exemplarCity":"Nouakchott"},"Ouagadougou":{"exemplarCity":"Ouagadougou"},"Porto-Novo":{"exemplarCity":"Porto-Novo"},"Sao_Tome":{"exemplarCity":"São Tomé"},"Tripoli":{"exemplarCity":"Tripoli"},"Tunis":{"exemplarCity":"Tunisi"},"Windhoek":{"exemplarCity":"Windhoek"}},"Asia":{"Aden":{"exemplarCity":"Aden"},"Almaty":{"exemplarCity":"Almaty"},"Amman":{"exemplarCity":"Amman"},"Anadyr":{"exemplarCity":"Anadyr’"},"Aqtau":{"exemplarCity":"Aqtau"},"Aqtobe":{"exemplarCity":"Aqtöbe"},"Ashgabat":{"exemplarCity":"Ashgabat"},"Atyrau":{"exemplarCity":"Atyrau"},"Baghdad":{"exemplarCity":"Baghdad"},"Bahrain":{"exemplarCity":"Bahrein"},"Baku":{"exemplarCity":"Baku"},"Bangkok":{"exemplarCity":"Bangkok"},"Barnaul":{"exemplarCity":"Barnaul"},"Beirut":{"exemplarCity":"Beirut"},"Bishkek":{"exemplarCity":"Bishkek"},"Brunei":{"exemplarCity":"Brunei"},"Calcutta":{"exemplarCity":"Calcutta"},"Chita":{"exemplarCity":"Čita"},"Choibalsan":{"exemplarCity":"Choibalsan"},"Colombo":{"exemplarCity":"Colombo"},"Damascus":{"exemplarCity":"Damasco"},"Dhaka":{"exemplarCity":"Dacca"},"Dili":{"exemplarCity":"Dili"},"Dubai":{"exemplarCity":"Dubai"},"Dushanbe":{"exemplarCity":"Dushanbe"},"Famagusta":{"exemplarCity":"Famagosta"},"Gaza":{"exemplarCity":"Gaza"},"Hebron":{"exemplarCity":"Hebron"},"Hong_Kong":{"exemplarCity":"Hong Kong"},"Hovd":{"exemplarCity":"Hovd"},"Irkutsk":{"exemplarCity":"Irkutsk"},"Jakarta":{"exemplarCity":"Giacarta"},"Jayapura":{"exemplarCity":"Jayapura"},"Jerusalem":{"exemplarCity":"Gerusalemme"},"Kabul":{"exemplarCity":"Kabul"},"Kamchatka":{"exemplarCity":"Kamchatka"},"Karachi":{"exemplarCity":"Karachi"},"Katmandu":{"exemplarCity":"Kathmandu"},"Khandyga":{"exemplarCity":"Chandyga"},"Krasnoyarsk":{"exemplarCity":"Krasnojarsk"},"Kuala_Lumpur":{"exemplarCity":"Kuala Lumpur"},"Kuching":{"exemplarCity":"Kuching"},"Kuwait":{"exemplarCity":"Kuwait"},"Macau":{"exemplarCity":"Macao"},"Magadan":{"exemplarCity":"Magadan"},"Makassar":{"exemplarCity":"Makassar"},"Manila":{"exemplarCity":"Manila"},"Muscat":{"exemplarCity":"Mascate"},"Nicosia":{"exemplarCity":"Nicosia"},"Novokuznetsk":{"exemplarCity":"Novokuzneck"},"Novosibirsk":{"exemplarCity":"Novosibirsk"},"Omsk":{"exemplarCity":"Omsk"},"Oral":{"exemplarCity":"Oral"},"Phnom_Penh":{"exemplarCity":"Phnom Penh"},"Pontianak":{"exemplarCity":"Pontianak"},"Pyongyang":{"exemplarCity":"Pyongyang"},"Qatar":{"exemplarCity":"Qatar"},"Qyzylorda":{"exemplarCity":"Qyzylorda"},"Rangoon":{"exemplarCity":"Rangoon"},"Riyadh":{"exemplarCity":"Riyad"},"Saigon":{"exemplarCity":"Ho Chi Minh"},"Sakhalin":{"exemplarCity":"Sachalin"},"Samarkand":{"exemplarCity":"Samarcanda"},"Seoul":{"exemplarCity":"Seul"},"Shanghai":{"exemplarCity":"Shanghai"},"Singapore":{"exemplarCity":"Singapore"},"Srednekolymsk":{"exemplarCity":"Srednekolymsk"},"Taipei":{"exemplarCity":"Taipei"},"Tashkent":{"exemplarCity":"Tashkent"},"Tbilisi":{"exemplarCity":"Tbilisi"},"Tehran":{"exemplarCity":"Teheran"},"Thimphu":{"exemplarCity":"Thimphu"},"Tokyo":{"exemplarCity":"Tokyo"},"Tomsk":{"exemplarCity":"Tomsk"},"Ulaanbaatar":{"exemplarCity":"Ulaanbaatar"},"Urumqi":{"exemplarCity":"Urumqi"},"Ust-Nera":{"exemplarCity":"Ust’-Nera"},"Vientiane":{"exemplarCity":"Vientiane"},"Vladivostok":{"exemplarCity":"Vladivostok"},"Yakutsk":{"exemplarCity":"Jakutsk"},"Yekaterinburg":{"exemplarCity":"Ekaterinburg"},"Yerevan":{"exemplarCity":"Yerevan"}},"Indian":{"Antananarivo":{"exemplarCity":"Antananarivo"},"Chagos":{"exemplarCity":"Chagos"},"Christmas":{"exemplarCity":"Natale"},"Cocos":{"exemplarCity":"Cocos"},"Comoro":{"exemplarCity":"Comore"},"Kerguelen":{"exemplarCity":"Kerguelen"},"Mahe":{"exemplarCity":"Mahe"},"Maldives":{"exemplarCity":"Maldive"},"Mauritius":{"exemplarCity":"Mauritius"},"Mayotte":{"exemplarCity":"Mayotte"},"Reunion":{"exemplarCity":"La Riunione"}},"Australia":{"Adelaide":{"exemplarCity":"Adelaide"},"Brisbane":{"exemplarCity":"Brisbane"},"Broken_Hill":{"exemplarCity":"Broken Hill"},"Currie":{"exemplarCity":"Currie"},"Darwin":{"exemplarCity":"Darwin"},"Eucla":{"exemplarCity":"Eucla"},"Hobart":{"exemplarCity":"Hobart"},"Lindeman":{"exemplarCity":"Lindeman"},"Lord_Howe":{"exemplarCity":"Lord Howe"},"Melbourne":{"exemplarCity":"Melbourne"},"Perth":{"exemplarCity":"Perth"},"Sydney":{"exemplarCity":"Sydney"}},"Pacific":{"Apia":{"exemplarCity":"Apia"},"Auckland":{"exemplarCity":"Auckland"},"Bougainville":{"exemplarCity":"Bougainville"},"Chatham":{"exemplarCity":"Chatham"},"Easter":{"exemplarCity":"Pasqua"},"Efate":{"exemplarCity":"Efate"},"Enderbury":{"exemplarCity":"Enderbury"},"Fakaofo":{"exemplarCity":"Fakaofo"},"Fiji":{"exemplarCity":"Figi"},"Funafuti":{"exemplarCity":"Funafuti"},"Galapagos":{"exemplarCity":"Galapagos"},"Gambier":{"exemplarCity":"Gambier"},"Guadalcanal":{"exemplarCity":"Guadalcanal"},"Guam":{"exemplarCity":"Guam"},"Honolulu":{"exemplarCity":"Honolulu"},"Johnston":{"exemplarCity":"Johnston"},"Kiritimati":{"exemplarCity":"Kiritimati"},"Kosrae":{"exemplarCity":"Kosrae"},"Kwajalein":{"exemplarCity":"Kwajalein"},"Majuro":{"exemplarCity":"Majuro"},"Marquesas":{"exemplarCity":"Marchesi"},"Midway":{"exemplarCity":"Midway"},"Nauru":{"exemplarCity":"Nauru"},"Niue":{"exemplarCity":"Niue"},"Norfolk":{"exemplarCity":"Norfolk"},"Noumea":{"exemplarCity":"Noumea"},"Pago_Pago":{"exemplarCity":"Pago Pago"},"Palau":{"exemplarCity":"Palau"},"Pitcairn":{"exemplarCity":"Pitcairn"},"Ponape":{"exemplarCity":"Pohnpei"},"Port_Moresby":{"exemplarCity":"Port Moresby"},"Rarotonga":{"exemplarCity":"Rarotonga"},"Saipan":{"exemplarCity":"Saipan"},"Tahiti":{"exemplarCity":"Tahiti"},"Tarawa":{"exemplarCity":"Tarawa"},"Tongatapu":{"exemplarCity":"Tongatapu"},"Truk":{"exemplarCity":"Chuuk"},"Wake":{"exemplarCity":"Wake"},"Wallis":{"exemplarCity":"Wallis"}},"Arctic":{"Longyearbyen":{"exemplarCity":"Longyearbyen"}},"Antarctica":{"Casey":{"exemplarCity":"Casey"},"Davis":{"exemplarCity":"Davis"},"DumontDUrville":{"exemplarCity":"Dumont d’Urville"},"Macquarie":{"exemplarCity":"Macquarie"},"Mawson":{"exemplarCity":"Mawson"},"McMurdo":{"exemplarCity":"McMurdo"},"Palmer":{"exemplarCity":"Palmer"},"Rothera":{"exemplarCity":"Rothera"},"Syowa":{"exemplarCity":"Syowa"},"Troll":{"exemplarCity":"Troll"},"Vostok":{"exemplarCity":"Vostok"}},"Etc":{"UTC":{"long":{"standard":"Tempo coordinato universale"},"short":{"standard":"UTC"}},"Unknown":{"exemplarCity":"Città sconosciuta"}}},"metazone":{"Afghanistan":{"long":{"standard":"Ora dell’Afghanistan"}},"Africa_Central":{"long":{"standard":"Ora dell’Africa centrale"}},"Africa_Eastern":{"long":{"standard":"Ora dell’Africa orientale"}},"Africa_Southern":{"long":{"standard":"Ora dell’Africa meridionale"}},"Africa_Western":{"long":{"generic":"Ora dell’Africa occidentale","standard":"Ora standard dell’Africa occidentale","daylight":"Ora legale dell’Africa occidentale"}},"Alaska":{"long":{"generic":"Ora dell’Alaska","standard":"Ora standard dell’Alaska","daylight":"Ora legale dell’Alaska"}},"Amazon":{"long":{"generic":"Ora dell’Amazzonia","standard":"Ora standard dell’Amazzonia","daylight":"Ora legale dell’Amazzonia"}},"America_Central":{"long":{"generic":"Ora centrale USA","standard":"Ora standard centrale USA","daylight":"Ora legale centrale USA"}},"America_Eastern":{"long":{"generic":"Ora orientale USA","standard":"Ora standard orientale USA","daylight":"Ora legale orientale USA"}},"America_Mountain":{"long":{"generic":"Ora Montagne Rocciose USA","standard":"Ora standard Montagne Rocciose USA","daylight":"Ora legale Montagne Rocciose USA"}},"America_Pacific":{"long":{"generic":"Ora del Pacifico USA","standard":"Ora standard del Pacifico USA","daylight":"Ora legale del Pacifico USA"}},"Anadyr":{"long":{"generic":"Ora di Anadyr","standard":"Ora standard di Anadyr","daylight":"Ora legale di Anadyr"}},"Apia":{"long":{"generic":"Ora di Apia","standard":"Ora standard di Apia","daylight":"Ora legale di Apia"}},"Arabian":{"long":{"generic":"Ora araba","standard":"Ora standard araba","daylight":"Ora legale araba"}},"Argentina":{"long":{"generic":"Ora dell’Argentina","standard":"Ora standard dell’Argentina","daylight":"Ora legale dell’Argentina"}},"Argentina_Western":{"long":{"generic":"Ora dell’Argentina occidentale","standard":"Ora standard dell’Argentina occidentale","daylight":"Ora legale dell’Argentina occidentale"}},"Armenia":{"long":{"generic":"Ora dell’Armenia","standard":"Ora standard dell’Armenia","daylight":"Ora legale dell’Armenia"}},"Atlantic":{"long":{"generic":"Ora dell’Atlantico","standard":"Ora standard dell’Atlantico","daylight":"Ora legale dell’Atlantico"}},"Australia_Central":{"long":{"generic":"Ora dell’Australia centrale","standard":"Ora standard dell’Australia centrale","daylight":"Ora legale dell’Australia centrale"}},"Australia_CentralWestern":{"long":{"generic":"Ora dell’Australia centroccidentale","standard":"Ora standard dell’Australia centroccidentale","daylight":"Ora legale dell’Australia centroccidentale"}},"Australia_Eastern":{"long":{"generic":"Ora dell’Australia orientale","standard":"Ora standard dell’Australia orientale","daylight":"Ora legale dell’Australia orientale"}},"Australia_Western":{"long":{"generic":"Ora dell’Australia occidentale","standard":"Ora standard dell’Australia occidentale","daylight":"Ora legale dell’Australia occidentale"}},"Azerbaijan":{"long":{"generic":"Ora dell’Azerbaigian","standard":"Ora standard dell’Azerbaigian","daylight":"Ora legale dell’Azerbaigian"}},"Azores":{"long":{"generic":"Ora delle Azzorre","standard":"Ora standard delle Azzorre","daylight":"Ora legale delle Azzorre"}},"Bangladesh":{"long":{"generic":"Ora del Bangladesh","standard":"Ora standard del Bangladesh","daylight":"Ora legale del Bangladesh"}},"Bhutan":{"long":{"standard":"Ora del Bhutan"}},"Bolivia":{"long":{"standard":"Ora della Bolivia"}},"Brasilia":{"long":{"generic":"Ora di Brasilia","standard":"Ora standard di Brasilia","daylight":"Ora legale di Brasilia"}},"Brunei":{"long":{"standard":"Ora del Brunei Darussalam"}},"Cape_Verde":{"long":{"generic":"Ora di Capo Verde","standard":"Ora standard di Capo Verde","daylight":"Ora legale di Capo Verde"}},"Chamorro":{"long":{"standard":"Ora di Chamorro"}},"Chatham":{"long":{"generic":"Ora delle Chatham","standard":"Ora standard delle Chatham","daylight":"Ora legale delle Chatham"}},"Chile":{"long":{"generic":"Ora del Cile","standard":"Ora standard del Cile","daylight":"Ora legale del Cile"}},"China":{"long":{"generic":"Ora della Cina","standard":"Ora standard della Cina","daylight":"Ora legale della Cina"}},"Choibalsan":{"long":{"generic":"Ora di Choibalsan","standard":"Ora standard di Choibalsan","daylight":"Ora legale di Choibalsan"}},"Christmas":{"long":{"standard":"Ora dell’Isola Christmas"}},"Cocos":{"long":{"standard":"Ora delle Isole Cocos"}},"Colombia":{"long":{"generic":"Ora della Colombia","standard":"Ora standard della Colombia","daylight":"Ora legale della Colombia"}},"Cook":{"long":{"generic":"Ora delle isole Cook","standard":"Ora standard delle isole Cook","daylight":"Ora legale media delle isole Cook"}},"Cuba":{"long":{"generic":"Ora di Cuba","standard":"Ora standard di Cuba","daylight":"Ora legale di Cuba"}},"Davis":{"long":{"standard":"Ora di Davis"}},"DumontDUrville":{"long":{"standard":"Ora di Dumont-d’Urville"}},"East_Timor":{"long":{"standard":"Ora di Timor Est"}},"Easter":{"long":{"generic":"Ora dell’Isola di Pasqua","standard":"Ora standard dell’Isola di Pasqua","daylight":"Ora legale dell’Isola di Pasqua"}},"Ecuador":{"long":{"standard":"Ora dell’Ecuador"}},"Europe_Central":{"long":{"generic":"Ora dell’Europa centrale","standard":"Ora standard dell’Europa centrale","daylight":"Ora legale dell’Europa centrale"},"short":{"generic":"CET","standard":"CET","daylight":"CEST"}},"Europe_Eastern":{"long":{"generic":"Ora dell’Europa orientale","standard":"Ora standard dell’Europa orientale","daylight":"Ora legale dell’Europa orientale"},"short":{"generic":"EET","standard":"EET","daylight":"EEST"}},"Europe_Further_Eastern":{"long":{"standard":"Ora dell’Europa orientale (Kaliningrad)"}},"Europe_Western":{"long":{"generic":"Ora dell’Europa occidentale","standard":"Ora standard dell’Europa occidentale","daylight":"Ora legale dell’Europa occidentale"},"short":{"generic":"WET","standard":"WET","daylight":"WEST"}},"Falkland":{"long":{"generic":"Ora delle Isole Falkland","standard":"Ora standard delle Isole Falkland","daylight":"Ora legale delle Isole Falkland"}},"Fiji":{"long":{"generic":"Ora delle Figi","standard":"Ora standard delle Figi","daylight":"Ora legale delle Figi"}},"French_Guiana":{"long":{"standard":"Ora della Guiana francese"}},"French_Southern":{"long":{"standard":"Ora delle Terre australi e antartiche francesi"}},"Galapagos":{"long":{"standard":"Ora delle Galapagos"}},"Gambier":{"long":{"standard":"Ora di Gambier"}},"Georgia":{"long":{"generic":"Ora della Georgia","standard":"Ora standard della Georgia","daylight":"Ora legale della Georgia"}},"Gilbert_Islands":{"long":{"standard":"Ora delle isole Gilbert"}},"GMT":{"long":{"standard":"Ora del meridiano di Greenwich"}},"Greenland_Eastern":{"long":{"generic":"Ora della Groenlandia orientale","standard":"Ora standard della Groenlandia orientale","daylight":"Ora legale della Groenlandia orientale"}},"Greenland_Western":{"long":{"generic":"Ora della Groenlandia occidentale","standard":"Ora standard della Groenlandia occidentale","daylight":"Ora legale della Groenlandia occidentale"}},"Gulf":{"long":{"standard":"Ora del Golfo"}},"Guyana":{"long":{"standard":"Ora della Guyana"}},"Hawaii_Aleutian":{"long":{"generic":"Ora delle isole Hawaii-Aleutine","standard":"Ora standard delle Isole Hawaii-Aleutine","daylight":"Ora legale delle Isole Hawaii-Aleutine"}},"Hong_Kong":{"long":{"generic":"Ora di Hong Kong","standard":"Ora standard di Hong Kong","daylight":"Ora legale di Hong Kong"}},"Hovd":{"long":{"generic":"Ora di Hovd","standard":"Ora standard di Hovd","daylight":"Ora legale di Hovd"}},"India":{"long":{"standard":"Ora standard dell’India"}},"Indian_Ocean":{"long":{"standard":"Ora dell’Oceano Indiano"}},"Indochina":{"long":{"standard":"Ora dell’Indocina"}},"Indonesia_Central":{"long":{"standard":"Ora dell’Indonesia centrale"}},"Indonesia_Eastern":{"long":{"standard":"Ora dell’Indonesia orientale"}},"Indonesia_Western":{"long":{"standard":"Ora dell’Indonesia occidentale"}},"Iran":{"long":{"generic":"Ora dell’Iran","standard":"Ora standard dell’Iran","daylight":"Ora legale dell’Iran"}},"Irkutsk":{"long":{"generic":"Ora di Irkutsk","standard":"Ora standard di Irkutsk","daylight":"Ora legale di Irkutsk"}},"Israel":{"long":{"generic":"Ora di Israele","standard":"Ora standard di Israele","daylight":"Ora legale di Israele"}},"Japan":{"long":{"generic":"Ora del Giappone","standard":"Ora standard del Giappone","daylight":"Ora legale del Giappone"}},"Kamchatka":{"long":{"generic":"Ora di Petropavlovsk-Kamchatski","standard":"Ora standard di Petropavlovsk-Kamchatski","daylight":"Ora legale di Petropavlovsk-Kamchatski"}},"Kazakhstan_Eastern":{"long":{"standard":"Ora del Kazakistan orientale"}},"Kazakhstan_Western":{"long":{"standard":"Ora del Kazakistan occidentale"}},"Korea":{"long":{"generic":"Ora coreana","standard":"Ora standard coreana","daylight":"Ora legale coreana"}},"Kosrae":{"long":{"standard":"Ora del Kosrae"}},"Krasnoyarsk":{"long":{"generic":"Ora di Krasnoyarsk","standard":"Ora standard di Krasnoyarsk","daylight":"Ora legale di Krasnoyarsk"}},"Kyrgystan":{"long":{"standard":"Ora del Kirghizistan"}},"Line_Islands":{"long":{"standard":"Ora delle Sporadi equatoriali"}},"Lord_Howe":{"long":{"generic":"Ora di Lord Howe","standard":"Ora standard di Lord Howe","daylight":"Ora legale di Lord Howe"}},"Macquarie":{"long":{"standard":"Ora dell’Isola Macquarie"}},"Magadan":{"long":{"generic":"Ora di Magadan","standard":"Ora standard di Magadan","daylight":"Ora legale di Magadan"}},"Malaysia":{"long":{"standard":"Ora della Malesia"}},"Maldives":{"long":{"standard":"Ora delle Maldive"}},"Marquesas":{"long":{"standard":"Ora delle Marchesi"}},"Marshall_Islands":{"long":{"standard":"Ora delle Isole Marshall"}},"Mauritius":{"long":{"generic":"Ora delle Mauritius","standard":"Ora standard delle Mauritius","daylight":"Ora legale delle Mauritius"}},"Mawson":{"long":{"standard":"Ora di Mawson"}},"Mexico_Northwest":{"long":{"generic":"Ora del Messico nord-occidentale","standard":"Ora standard del Messico nord-occidentale","daylight":"Ora legale del Messico nord-occidentale"}},"Mexico_Pacific":{"long":{"generic":"Ora del Pacifico (Messico)","standard":"Ora standard del Pacifico (Messico)","daylight":"Ora legale del Pacifico (Messico)"}},"Mongolia":{"long":{"generic":"Ora di Ulan Bator","standard":"Ora standard di Ulan Bator","daylight":"Ora legale di Ulan Bator"}},"Moscow":{"long":{"generic":"Ora di Mosca","standard":"Ora standard di Mosca","daylight":"Ora legale di Mosca"}},"Myanmar":{"long":{"standard":"Ora della Birmania"}},"Nauru":{"long":{"standard":"Ora di Nauru"}},"Nepal":{"long":{"standard":"Ora del Nepal"}},"New_Caledonia":{"long":{"generic":"Ora della Nuova Caledonia","standard":"Ora standard della Nuova Caledonia","daylight":"Ora legale della Nuova Caledonia"}},"New_Zealand":{"long":{"generic":"Ora della Nuova Zelanda","standard":"Ora standard della Nuova Zelanda","daylight":"Ora legale della Nuova Zelanda"}},"Newfoundland":{"long":{"generic":"Ora di Terranova","standard":"Ora standard di Terranova","daylight":"Ora legale di Terranova"}},"Niue":{"long":{"standard":"Ora di Niue"}},"Norfolk":{"long":{"standard":"Ora delle Isole Norfolk"}},"Noronha":{"long":{"generic":"Ora di Fernando de Noronha","standard":"Ora standard di Fernando de Noronha","daylight":"Ora legale di Fernando de Noronha"}},"Novosibirsk":{"long":{"generic":"Ora di Novosibirsk","standard":"Ora standard di Novosibirsk","daylight":"Ora legale di Novosibirsk"}},"Omsk":{"long":{"generic":"Ora di Omsk","standard":"Ora standard di Omsk","daylight":"Ora legale di Omsk"}},"Pakistan":{"long":{"generic":"Ora del Pakistan","standard":"Ora standard del Pakistan","daylight":"Ora legale del Pakistan"}},"Palau":{"long":{"standard":"Ora di Palau"}},"Papua_New_Guinea":{"long":{"standard":"Ora della Papua Nuova Guinea"}},"Paraguay":{"long":{"generic":"Ora del Paraguay","standard":"Ora standard del Paraguay","daylight":"Ora legale del Paraguay"}},"Peru":{"long":{"generic":"Ora del Perù","standard":"Ora standard del Perù","daylight":"Ora legale del Perù"}},"Philippines":{"long":{"generic":"Ora delle Filippine","standard":"Ora standard delle Filippine","daylight":"Ora legale delle Filippine"}},"Phoenix_Islands":{"long":{"standard":"Ora delle Isole della Fenice"}},"Pierre_Miquelon":{"long":{"generic":"Ora di Saint-Pierre e Miquelon","standard":"Ora standard di Saint-Pierre e Miquelon","daylight":"Ora legale di Saint-Pierre e Miquelon"}},"Pitcairn":{"long":{"standard":"Ora delle Pitcairn"}},"Ponape":{"long":{"standard":"Ora di Pohnpei"}},"Pyongyang":{"long":{"standard":"Ora di Pyongyang"}},"Reunion":{"long":{"standard":"Ora di Riunione"}},"Rothera":{"long":{"standard":"Ora di Rothera"}},"Sakhalin":{"long":{"generic":"Ora di Sakhalin","standard":"Ora standard di Sakhalin","daylight":"Ora legale di Sakhalin"}},"Samara":{"long":{"generic":"Ora di Samara","standard":"Ora standard di Samara","daylight":"Ora legale di Samara"}},"Samoa":{"long":{"generic":"Ora di Samoa","standard":"Ora standard di Samoa","daylight":"Ora legale di Samoa"}},"Seychelles":{"long":{"standard":"Ora delle Seychelles"}},"Singapore":{"long":{"standard":"Ora di Singapore"}},"Solomon":{"long":{"standard":"Ora delle Isole Salomone"}},"South_Georgia":{"long":{"standard":"Ora della Georgia del Sud"}},"Suriname":{"long":{"standard":"Ora del Suriname"}},"Syowa":{"long":{"standard":"Ora di Syowa"}},"Tahiti":{"long":{"standard":"Ora di Tahiti"}},"Taipei":{"long":{"generic":"Ora di Taipei","standard":"Ora standard di Taipei","daylight":"Ora legale di Taipei"}},"Tajikistan":{"long":{"standard":"Ora del Tagikistan"}},"Tokelau":{"long":{"standard":"Ora di Tokelau"}},"Tonga":{"long":{"generic":"Ora di Tonga","standard":"Ora standard di Tonga","daylight":"Ora legale di Tonga"}},"Truk":{"long":{"standard":"Ora del Chuuk"}},"Turkmenistan":{"long":{"generic":"Ora del Turkmenistan","standard":"Ora standard del Turkmenistan","daylight":"Ora legale del Turkmenistan"}},"Tuvalu":{"long":{"standard":"Ora di Tuvalu"}},"Uruguay":{"long":{"generic":"Ora dell’Uruguay","standard":"Ora standard dell’Uruguay","daylight":"Ora legale dell’Uruguay"}},"Uzbekistan":{"long":{"generic":"Ora dell’Uzbekistan","standard":"Ora standard dell’Uzbekistan","daylight":"Ora legale dell’Uzbekistan"}},"Vanuatu":{"long":{"generic":"Ora del Vanuatu","standard":"Ora standard del Vanuatu","daylight":"Ora legale del Vanuatu"}},"Venezuela":{"long":{"standard":"Ora del Venezuela"}},"Vladivostok":{"long":{"generic":"Ora di Vladivostok","standard":"Ora standard di Vladivostok","daylight":"Ora legale di Vladivostok"}},"Volgograd":{"long":{"generic":"Ora di Volgograd","standard":"Ora standard di Volgograd","daylight":"Ora legale di Volgograd"}},"Vostok":{"long":{"standard":"Ora di Vostok"}},"Wake":{"long":{"standard":"Ora dell’Isola di Wake"}},"Wallis":{"long":{"standard":"Ora di Wallis e Futuna"}},"Yakutsk":{"long":{"generic":"Ora di Yakutsk","standard":"Ora standard di Yakutsk","daylight":"Ora legale di Yakutsk"}},"Yekaterinburg":{"long":{"generic":"Ora di Ekaterinburg","standard":"Ora standard di Ekaterinburg","daylight":"Ora legale di Ekaterinburg"}}}}}}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/likelySubtags.json": -/*!****************************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/likelySubtags.json ***! - \****************************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13699 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"likelySubtags":{"aa":"aa-Latn-ET","aai":"aai-Latn-ZZ","aak":"aak-Latn-ZZ","aau":"aau-Latn-ZZ","ab":"ab-Cyrl-GE","abi":"abi-Latn-ZZ","abq":"abq-Cyrl-ZZ","abr":"abr-Latn-GH","abt":"abt-Latn-ZZ","aby":"aby-Latn-ZZ","acd":"acd-Latn-ZZ","ace":"ace-Latn-ID","ach":"ach-Latn-UG","ada":"ada-Latn-GH","ade":"ade-Latn-ZZ","adj":"adj-Latn-ZZ","ady":"ady-Cyrl-RU","adz":"adz-Latn-ZZ","ae":"ae-Avst-IR","aeb":"aeb-Arab-TN","aey":"aey-Latn-ZZ","af":"af-Latn-ZA","agc":"agc-Latn-ZZ","agd":"agd-Latn-ZZ","agg":"agg-Latn-ZZ","agm":"agm-Latn-ZZ","ago":"ago-Latn-ZZ","agq":"agq-Latn-CM","aha":"aha-Latn-ZZ","ahl":"ahl-Latn-ZZ","aho":"aho-Ahom-IN","ajg":"ajg-Latn-ZZ","ak":"ak-Latn-GH","akk":"akk-Xsux-IQ","ala":"ala-Latn-ZZ","ali":"ali-Latn-ZZ","aln":"aln-Latn-XK","alt":"alt-Cyrl-RU","am":"am-Ethi-ET","amm":"amm-Latn-ZZ","amn":"amn-Latn-ZZ","amo":"amo-Latn-NG","amp":"amp-Latn-ZZ","anc":"anc-Latn-ZZ","ank":"ank-Latn-ZZ","ann":"ann-Latn-ZZ","any":"any-Latn-ZZ","aoj":"aoj-Latn-ZZ","aom":"aom-Latn-ZZ","aoz":"aoz-Latn-ID","apc":"apc-Arab-ZZ","apd":"apd-Arab-TG","ape":"ape-Latn-ZZ","apr":"apr-Latn-ZZ","aps":"aps-Latn-ZZ","apz":"apz-Latn-ZZ","ar":"ar-Arab-EG","arc":"arc-Armi-IR","arc-Nbat":"arc-Nbat-JO","arc-Palm":"arc-Palm-SY","arh":"arh-Latn-ZZ","arn":"arn-Latn-CL","aro":"aro-Latn-BO","arq":"arq-Arab-DZ","ary":"ary-Arab-MA","arz":"arz-Arab-EG","as":"as-Beng-IN","asa":"asa-Latn-TZ","ase":"ase-Sgnw-US","asg":"asg-Latn-ZZ","aso":"aso-Latn-ZZ","ast":"ast-Latn-ES","ata":"ata-Latn-ZZ","atg":"atg-Latn-ZZ","atj":"atj-Latn-CA","auy":"auy-Latn-ZZ","av":"av-Cyrl-RU","avl":"avl-Arab-ZZ","avn":"avn-Latn-ZZ","avt":"avt-Latn-ZZ","avu":"avu-Latn-ZZ","awa":"awa-Deva-IN","awb":"awb-Latn-ZZ","awo":"awo-Latn-ZZ","awx":"awx-Latn-ZZ","ay":"ay-Latn-BO","ayb":"ayb-Latn-ZZ","az":"az-Latn-AZ","az-Arab":"az-Arab-IR","az-IQ":"az-Arab-IQ","az-IR":"az-Arab-IR","az-RU":"az-Cyrl-RU","ba":"ba-Cyrl-RU","bal":"bal-Arab-PK","ban":"ban-Latn-ID","bap":"bap-Deva-NP","bar":"bar-Latn-AT","bas":"bas-Latn-CM","bav":"bav-Latn-ZZ","bax":"bax-Bamu-CM","bba":"bba-Latn-ZZ","bbb":"bbb-Latn-ZZ","bbc":"bbc-Latn-ID","bbd":"bbd-Latn-ZZ","bbj":"bbj-Latn-CM","bbp":"bbp-Latn-ZZ","bbr":"bbr-Latn-ZZ","bcf":"bcf-Latn-ZZ","bch":"bch-Latn-ZZ","bci":"bci-Latn-CI","bcm":"bcm-Latn-ZZ","bcn":"bcn-Latn-ZZ","bco":"bco-Latn-ZZ","bcq":"bcq-Ethi-ZZ","bcu":"bcu-Latn-ZZ","bdd":"bdd-Latn-ZZ","be":"be-Cyrl-BY","bef":"bef-Latn-ZZ","beh":"beh-Latn-ZZ","bej":"bej-Arab-SD","bem":"bem-Latn-ZM","bet":"bet-Latn-ZZ","bew":"bew-Latn-ID","bex":"bex-Latn-ZZ","bez":"bez-Latn-TZ","bfd":"bfd-Latn-CM","bfq":"bfq-Taml-IN","bft":"bft-Arab-PK","bfy":"bfy-Deva-IN","bg":"bg-Cyrl-BG","bgc":"bgc-Deva-IN","bgn":"bgn-Arab-PK","bgx":"bgx-Grek-TR","bhb":"bhb-Deva-IN","bhg":"bhg-Latn-ZZ","bhi":"bhi-Deva-IN","bhk":"bhk-Latn-PH","bhl":"bhl-Latn-ZZ","bho":"bho-Deva-IN","bhy":"bhy-Latn-ZZ","bi":"bi-Latn-VU","bib":"bib-Latn-ZZ","big":"big-Latn-ZZ","bik":"bik-Latn-PH","bim":"bim-Latn-ZZ","bin":"bin-Latn-NG","bio":"bio-Latn-ZZ","biq":"biq-Latn-ZZ","bjh":"bjh-Latn-ZZ","bji":"bji-Ethi-ZZ","bjj":"bjj-Deva-IN","bjn":"bjn-Latn-ID","bjo":"bjo-Latn-ZZ","bjr":"bjr-Latn-ZZ","bjt":"bjt-Latn-SN","bjz":"bjz-Latn-ZZ","bkc":"bkc-Latn-ZZ","bkm":"bkm-Latn-CM","bkq":"bkq-Latn-ZZ","bku":"bku-Latn-PH","bkv":"bkv-Latn-ZZ","blt":"blt-Tavt-VN","bm":"bm-Latn-ML","bmh":"bmh-Latn-ZZ","bmk":"bmk-Latn-ZZ","bmq":"bmq-Latn-ML","bmu":"bmu-Latn-ZZ","bn":"bn-Beng-BD","bng":"bng-Latn-ZZ","bnm":"bnm-Latn-ZZ","bnp":"bnp-Latn-ZZ","bo":"bo-Tibt-CN","boj":"boj-Latn-ZZ","bom":"bom-Latn-ZZ","bon":"bon-Latn-ZZ","bpy":"bpy-Beng-IN","bqc":"bqc-Latn-ZZ","bqi":"bqi-Arab-IR","bqp":"bqp-Latn-ZZ","bqv":"bqv-Latn-CI","br":"br-Latn-FR","bra":"bra-Deva-IN","brh":"brh-Arab-PK","brx":"brx-Deva-IN","brz":"brz-Latn-ZZ","bs":"bs-Latn-BA","bsj":"bsj-Latn-ZZ","bsq":"bsq-Bass-LR","bss":"bss-Latn-CM","bst":"bst-Ethi-ZZ","bto":"bto-Latn-PH","btt":"btt-Latn-ZZ","btv":"btv-Deva-PK","bua":"bua-Cyrl-RU","buc":"buc-Latn-YT","bud":"bud-Latn-ZZ","bug":"bug-Latn-ID","buk":"buk-Latn-ZZ","bum":"bum-Latn-CM","buo":"buo-Latn-ZZ","bus":"bus-Latn-ZZ","buu":"buu-Latn-ZZ","bvb":"bvb-Latn-GQ","bwd":"bwd-Latn-ZZ","bwr":"bwr-Latn-ZZ","bxh":"bxh-Latn-ZZ","bye":"bye-Latn-ZZ","byn":"byn-Ethi-ER","byr":"byr-Latn-ZZ","bys":"bys-Latn-ZZ","byv":"byv-Latn-CM","byx":"byx-Latn-ZZ","bza":"bza-Latn-ZZ","bze":"bze-Latn-ML","bzf":"bzf-Latn-ZZ","bzh":"bzh-Latn-ZZ","bzw":"bzw-Latn-ZZ","ca":"ca-Latn-ES","can":"can-Latn-ZZ","cbj":"cbj-Latn-ZZ","cch":"cch-Latn-NG","ccp":"ccp-Cakm-BD","ce":"ce-Cyrl-RU","ceb":"ceb-Latn-PH","cfa":"cfa-Latn-ZZ","cgg":"cgg-Latn-UG","ch":"ch-Latn-GU","chk":"chk-Latn-FM","chm":"chm-Cyrl-RU","cho":"cho-Latn-US","chp":"chp-Latn-CA","chr":"chr-Cher-US","cja":"cja-Arab-KH","cjm":"cjm-Cham-VN","cjv":"cjv-Latn-ZZ","ckb":"ckb-Arab-IQ","ckl":"ckl-Latn-ZZ","cko":"cko-Latn-ZZ","cky":"cky-Latn-ZZ","cla":"cla-Latn-ZZ","cme":"cme-Latn-ZZ","cmg":"cmg-Soyo-MN","co":"co-Latn-FR","cop":"cop-Copt-EG","cps":"cps-Latn-PH","cr":"cr-Cans-CA","crh":"crh-Cyrl-UA","crj":"crj-Cans-CA","crk":"crk-Cans-CA","crl":"crl-Cans-CA","crm":"crm-Cans-CA","crs":"crs-Latn-SC","cs":"cs-Latn-CZ","csb":"csb-Latn-PL","csw":"csw-Cans-CA","ctd":"ctd-Pauc-MM","cu":"cu-Cyrl-RU","cu-Glag":"cu-Glag-BG","cv":"cv-Cyrl-RU","cy":"cy-Latn-GB","da":"da-Latn-DK","dad":"dad-Latn-ZZ","daf":"daf-Latn-ZZ","dag":"dag-Latn-ZZ","dah":"dah-Latn-ZZ","dak":"dak-Latn-US","dar":"dar-Cyrl-RU","dav":"dav-Latn-KE","dbd":"dbd-Latn-ZZ","dbq":"dbq-Latn-ZZ","dcc":"dcc-Arab-IN","ddn":"ddn-Latn-ZZ","de":"de-Latn-DE","ded":"ded-Latn-ZZ","den":"den-Latn-CA","dga":"dga-Latn-ZZ","dgh":"dgh-Latn-ZZ","dgi":"dgi-Latn-ZZ","dgl":"dgl-Arab-ZZ","dgr":"dgr-Latn-CA","dgz":"dgz-Latn-ZZ","dia":"dia-Latn-ZZ","dje":"dje-Latn-NE","dnj":"dnj-Latn-CI","dob":"dob-Latn-ZZ","doi":"doi-Arab-IN","dop":"dop-Latn-ZZ","dow":"dow-Latn-ZZ","dri":"dri-Latn-ZZ","drs":"drs-Ethi-ZZ","dsb":"dsb-Latn-DE","dtm":"dtm-Latn-ML","dtp":"dtp-Latn-MY","dts":"dts-Latn-ZZ","dty":"dty-Deva-NP","dua":"dua-Latn-CM","duc":"duc-Latn-ZZ","dud":"dud-Latn-ZZ","dug":"dug-Latn-ZZ","dv":"dv-Thaa-MV","dva":"dva-Latn-ZZ","dww":"dww-Latn-ZZ","dyo":"dyo-Latn-SN","dyu":"dyu-Latn-BF","dz":"dz-Tibt-BT","dzg":"dzg-Latn-ZZ","ebu":"ebu-Latn-KE","ee":"ee-Latn-GH","efi":"efi-Latn-NG","egl":"egl-Latn-IT","egy":"egy-Egyp-EG","eka":"eka-Latn-ZZ","eky":"eky-Kali-MM","el":"el-Grek-GR","ema":"ema-Latn-ZZ","emi":"emi-Latn-ZZ","en":"en-Latn-US","en-Shaw":"en-Shaw-GB","enn":"enn-Latn-ZZ","enq":"enq-Latn-ZZ","eo":"eo-Latn-001","eri":"eri-Latn-ZZ","es":"es-Latn-ES","esu":"esu-Latn-US","et":"et-Latn-EE","etr":"etr-Latn-ZZ","ett":"ett-Ital-IT","etu":"etu-Latn-ZZ","etx":"etx-Latn-ZZ","eu":"eu-Latn-ES","ewo":"ewo-Latn-CM","ext":"ext-Latn-ES","fa":"fa-Arab-IR","faa":"faa-Latn-ZZ","fab":"fab-Latn-ZZ","fag":"fag-Latn-ZZ","fai":"fai-Latn-ZZ","fan":"fan-Latn-GQ","ff":"ff-Latn-SN","ff-Adlm":"ff-Adlm-GN","ffi":"ffi-Latn-ZZ","ffm":"ffm-Latn-ML","fi":"fi-Latn-FI","fia":"fia-Arab-SD","fil":"fil-Latn-PH","fit":"fit-Latn-SE","fj":"fj-Latn-FJ","flr":"flr-Latn-ZZ","fmp":"fmp-Latn-ZZ","fo":"fo-Latn-FO","fod":"fod-Latn-ZZ","fon":"fon-Latn-BJ","for":"for-Latn-ZZ","fpe":"fpe-Latn-ZZ","fqs":"fqs-Latn-ZZ","fr":"fr-Latn-FR","frc":"frc-Latn-US","frp":"frp-Latn-FR","frr":"frr-Latn-DE","frs":"frs-Latn-DE","fub":"fub-Arab-CM","fud":"fud-Latn-WF","fue":"fue-Latn-ZZ","fuf":"fuf-Latn-GN","fuh":"fuh-Latn-ZZ","fuq":"fuq-Latn-NE","fur":"fur-Latn-IT","fuv":"fuv-Latn-NG","fuy":"fuy-Latn-ZZ","fvr":"fvr-Latn-SD","fy":"fy-Latn-NL","ga":"ga-Latn-IE","gaa":"gaa-Latn-GH","gaf":"gaf-Latn-ZZ","gag":"gag-Latn-MD","gah":"gah-Latn-ZZ","gaj":"gaj-Latn-ZZ","gam":"gam-Latn-ZZ","gan":"gan-Hans-CN","gaw":"gaw-Latn-ZZ","gay":"gay-Latn-ID","gba":"gba-Latn-ZZ","gbf":"gbf-Latn-ZZ","gbm":"gbm-Deva-IN","gby":"gby-Latn-ZZ","gbz":"gbz-Arab-IR","gcr":"gcr-Latn-GF","gd":"gd-Latn-GB","gde":"gde-Latn-ZZ","gdn":"gdn-Latn-ZZ","gdr":"gdr-Latn-ZZ","geb":"geb-Latn-ZZ","gej":"gej-Latn-ZZ","gel":"gel-Latn-ZZ","gez":"gez-Ethi-ET","gfk":"gfk-Latn-ZZ","ggn":"ggn-Deva-NP","ghs":"ghs-Latn-ZZ","gil":"gil-Latn-KI","gim":"gim-Latn-ZZ","gjk":"gjk-Arab-PK","gjn":"gjn-Latn-ZZ","gju":"gju-Arab-PK","gkn":"gkn-Latn-ZZ","gkp":"gkp-Latn-ZZ","gl":"gl-Latn-ES","glk":"glk-Arab-IR","gmm":"gmm-Latn-ZZ","gmv":"gmv-Ethi-ZZ","gn":"gn-Latn-PY","gnd":"gnd-Latn-ZZ","gng":"gng-Latn-ZZ","god":"god-Latn-ZZ","gof":"gof-Ethi-ZZ","goi":"goi-Latn-ZZ","gom":"gom-Deva-IN","gon":"gon-Telu-IN","gor":"gor-Latn-ID","gos":"gos-Latn-NL","got":"got-Goth-UA","grb":"grb-Latn-ZZ","grc":"grc-Cprt-CY","grc-Linb":"grc-Linb-GR","grt":"grt-Beng-IN","grw":"grw-Latn-ZZ","gsw":"gsw-Latn-CH","gu":"gu-Gujr-IN","gub":"gub-Latn-BR","guc":"guc-Latn-CO","gud":"gud-Latn-ZZ","gur":"gur-Latn-GH","guw":"guw-Latn-ZZ","gux":"gux-Latn-ZZ","guz":"guz-Latn-KE","gv":"gv-Latn-IM","gvf":"gvf-Latn-ZZ","gvr":"gvr-Deva-NP","gvs":"gvs-Latn-ZZ","gwc":"gwc-Arab-ZZ","gwi":"gwi-Latn-CA","gwt":"gwt-Arab-ZZ","gyi":"gyi-Latn-ZZ","ha":"ha-Latn-NG","ha-CM":"ha-Arab-CM","ha-SD":"ha-Arab-SD","hag":"hag-Latn-ZZ","hak":"hak-Hans-CN","ham":"ham-Latn-ZZ","haw":"haw-Latn-US","haz":"haz-Arab-AF","hbb":"hbb-Latn-ZZ","hdy":"hdy-Ethi-ZZ","he":"he-Hebr-IL","hhy":"hhy-Latn-ZZ","hi":"hi-Deva-IN","hia":"hia-Latn-ZZ","hif":"hif-Latn-FJ","hig":"hig-Latn-ZZ","hih":"hih-Latn-ZZ","hil":"hil-Latn-PH","hla":"hla-Latn-ZZ","hlu":"hlu-Hluw-TR","hmd":"hmd-Plrd-CN","hmt":"hmt-Latn-ZZ","hnd":"hnd-Arab-PK","hne":"hne-Deva-IN","hnj":"hnj-Hmng-LA","hnn":"hnn-Latn-PH","hno":"hno-Arab-PK","ho":"ho-Latn-PG","hoc":"hoc-Deva-IN","hoj":"hoj-Deva-IN","hot":"hot-Latn-ZZ","hr":"hr-Latn-HR","hsb":"hsb-Latn-DE","hsn":"hsn-Hans-CN","ht":"ht-Latn-HT","hu":"hu-Latn-HU","hui":"hui-Latn-ZZ","hy":"hy-Armn-AM","hz":"hz-Latn-NA","ia":"ia-Latn-FR","ian":"ian-Latn-ZZ","iar":"iar-Latn-ZZ","iba":"iba-Latn-MY","ibb":"ibb-Latn-NG","iby":"iby-Latn-ZZ","ica":"ica-Latn-ZZ","ich":"ich-Latn-ZZ","id":"id-Latn-ID","idd":"idd-Latn-ZZ","idi":"idi-Latn-ZZ","idu":"idu-Latn-ZZ","ife":"ife-Latn-TG","ig":"ig-Latn-NG","igb":"igb-Latn-ZZ","ige":"ige-Latn-ZZ","ii":"ii-Yiii-CN","ijj":"ijj-Latn-ZZ","ik":"ik-Latn-US","ikk":"ikk-Latn-ZZ","ikt":"ikt-Latn-CA","ikw":"ikw-Latn-ZZ","ikx":"ikx-Latn-ZZ","ilo":"ilo-Latn-PH","imo":"imo-Latn-ZZ","in":"in-Latn-ID","inh":"inh-Cyrl-RU","io":"io-Latn-001","iou":"iou-Latn-ZZ","iri":"iri-Latn-ZZ","is":"is-Latn-IS","it":"it-Latn-IT","iu":"iu-Cans-CA","iw":"iw-Hebr-IL","iwm":"iwm-Latn-ZZ","iws":"iws-Latn-ZZ","izh":"izh-Latn-RU","izi":"izi-Latn-ZZ","ja":"ja-Jpan-JP","jab":"jab-Latn-ZZ","jam":"jam-Latn-JM","jbo":"jbo-Latn-001","jbu":"jbu-Latn-ZZ","jen":"jen-Latn-ZZ","jgk":"jgk-Latn-ZZ","jgo":"jgo-Latn-CM","ji":"ji-Hebr-UA","jib":"jib-Latn-ZZ","jmc":"jmc-Latn-TZ","jml":"jml-Deva-NP","jra":"jra-Latn-ZZ","jut":"jut-Latn-DK","jv":"jv-Latn-ID","jw":"jw-Latn-ID","ka":"ka-Geor-GE","kaa":"kaa-Cyrl-UZ","kab":"kab-Latn-DZ","kac":"kac-Latn-MM","kad":"kad-Latn-ZZ","kai":"kai-Latn-ZZ","kaj":"kaj-Latn-NG","kam":"kam-Latn-KE","kao":"kao-Latn-ML","kbd":"kbd-Cyrl-RU","kbm":"kbm-Latn-ZZ","kbp":"kbp-Latn-ZZ","kbq":"kbq-Latn-ZZ","kbx":"kbx-Latn-ZZ","kby":"kby-Arab-NE","kcg":"kcg-Latn-NG","kck":"kck-Latn-ZW","kcl":"kcl-Latn-ZZ","kct":"kct-Latn-ZZ","kde":"kde-Latn-TZ","kdh":"kdh-Arab-TG","kdl":"kdl-Latn-ZZ","kdt":"kdt-Thai-TH","kea":"kea-Latn-CV","ken":"ken-Latn-CM","kez":"kez-Latn-ZZ","kfo":"kfo-Latn-CI","kfr":"kfr-Deva-IN","kfy":"kfy-Deva-IN","kg":"kg-Latn-CD","kge":"kge-Latn-ID","kgf":"kgf-Latn-ZZ","kgp":"kgp-Latn-BR","kha":"kha-Latn-IN","khb":"khb-Talu-CN","khn":"khn-Deva-IN","khq":"khq-Latn-ML","khs":"khs-Latn-ZZ","kht":"kht-Mymr-IN","khw":"khw-Arab-PK","khz":"khz-Latn-ZZ","ki":"ki-Latn-KE","kij":"kij-Latn-ZZ","kiu":"kiu-Latn-TR","kiw":"kiw-Latn-ZZ","kj":"kj-Latn-NA","kjd":"kjd-Latn-ZZ","kjg":"kjg-Laoo-LA","kjs":"kjs-Latn-ZZ","kjy":"kjy-Latn-ZZ","kk":"kk-Cyrl-KZ","kk-AF":"kk-Arab-AF","kk-Arab":"kk-Arab-CN","kk-CN":"kk-Arab-CN","kk-IR":"kk-Arab-IR","kk-MN":"kk-Arab-MN","kkc":"kkc-Latn-ZZ","kkj":"kkj-Latn-CM","kl":"kl-Latn-GL","kln":"kln-Latn-KE","klq":"klq-Latn-ZZ","klt":"klt-Latn-ZZ","klx":"klx-Latn-ZZ","km":"km-Khmr-KH","kmb":"kmb-Latn-AO","kmh":"kmh-Latn-ZZ","kmo":"kmo-Latn-ZZ","kms":"kms-Latn-ZZ","kmu":"kmu-Latn-ZZ","kmw":"kmw-Latn-ZZ","kn":"kn-Knda-IN","knf":"knf-Latn-GW","knp":"knp-Latn-ZZ","ko":"ko-Kore-KR","koi":"koi-Cyrl-RU","kok":"kok-Deva-IN","kol":"kol-Latn-ZZ","kos":"kos-Latn-FM","koz":"koz-Latn-ZZ","kpe":"kpe-Latn-LR","kpf":"kpf-Latn-ZZ","kpo":"kpo-Latn-ZZ","kpr":"kpr-Latn-ZZ","kpx":"kpx-Latn-ZZ","kqb":"kqb-Latn-ZZ","kqf":"kqf-Latn-ZZ","kqs":"kqs-Latn-ZZ","kqy":"kqy-Ethi-ZZ","kr":"kr-Latn-ZZ","krc":"krc-Cyrl-RU","kri":"kri-Latn-SL","krj":"krj-Latn-PH","krl":"krl-Latn-RU","krs":"krs-Latn-ZZ","kru":"kru-Deva-IN","ks":"ks-Arab-IN","ksb":"ksb-Latn-TZ","ksd":"ksd-Latn-ZZ","ksf":"ksf-Latn-CM","ksh":"ksh-Latn-DE","ksj":"ksj-Latn-ZZ","ksr":"ksr-Latn-ZZ","ktb":"ktb-Ethi-ZZ","ktm":"ktm-Latn-ZZ","kto":"kto-Latn-ZZ","ku":"ku-Latn-TR","ku-Arab":"ku-Arab-IQ","ku-LB":"ku-Arab-LB","kub":"kub-Latn-ZZ","kud":"kud-Latn-ZZ","kue":"kue-Latn-ZZ","kuj":"kuj-Latn-ZZ","kum":"kum-Cyrl-RU","kun":"kun-Latn-ZZ","kup":"kup-Latn-ZZ","kus":"kus-Latn-ZZ","kv":"kv-Cyrl-RU","kvg":"kvg-Latn-ZZ","kvr":"kvr-Latn-ID","kvx":"kvx-Arab-PK","kw":"kw-Latn-GB","kwj":"kwj-Latn-ZZ","kwo":"kwo-Latn-ZZ","kxa":"kxa-Latn-ZZ","kxc":"kxc-Ethi-ZZ","kxm":"kxm-Thai-TH","kxp":"kxp-Arab-PK","kxw":"kxw-Latn-ZZ","kxz":"kxz-Latn-ZZ","ky":"ky-Cyrl-KG","ky-Arab":"ky-Arab-CN","ky-CN":"ky-Arab-CN","ky-Latn":"ky-Latn-TR","ky-TR":"ky-Latn-TR","kye":"kye-Latn-ZZ","kyx":"kyx-Latn-ZZ","kzr":"kzr-Latn-ZZ","la":"la-Latn-VA","lab":"lab-Lina-GR","lad":"lad-Hebr-IL","lag":"lag-Latn-TZ","lah":"lah-Arab-PK","laj":"laj-Latn-UG","las":"las-Latn-ZZ","lb":"lb-Latn-LU","lbe":"lbe-Cyrl-RU","lbu":"lbu-Latn-ZZ","lbw":"lbw-Latn-ID","lcm":"lcm-Latn-ZZ","lcp":"lcp-Thai-CN","ldb":"ldb-Latn-ZZ","led":"led-Latn-ZZ","lee":"lee-Latn-ZZ","lem":"lem-Latn-ZZ","lep":"lep-Lepc-IN","leq":"leq-Latn-ZZ","leu":"leu-Latn-ZZ","lez":"lez-Cyrl-RU","lg":"lg-Latn-UG","lgg":"lgg-Latn-ZZ","li":"li-Latn-NL","lia":"lia-Latn-ZZ","lid":"lid-Latn-ZZ","lif":"lif-Deva-NP","lif-Limb":"lif-Limb-IN","lig":"lig-Latn-ZZ","lih":"lih-Latn-ZZ","lij":"lij-Latn-IT","lis":"lis-Lisu-CN","ljp":"ljp-Latn-ID","lki":"lki-Arab-IR","lkt":"lkt-Latn-US","lle":"lle-Latn-ZZ","lln":"lln-Latn-ZZ","lmn":"lmn-Telu-IN","lmo":"lmo-Latn-IT","lmp":"lmp-Latn-ZZ","ln":"ln-Latn-CD","lns":"lns-Latn-ZZ","lnu":"lnu-Latn-ZZ","lo":"lo-Laoo-LA","loj":"loj-Latn-ZZ","lok":"lok-Latn-ZZ","lol":"lol-Latn-CD","lor":"lor-Latn-ZZ","los":"los-Latn-ZZ","loz":"loz-Latn-ZM","lrc":"lrc-Arab-IR","lt":"lt-Latn-LT","ltg":"ltg-Latn-LV","lu":"lu-Latn-CD","lua":"lua-Latn-CD","luo":"luo-Latn-KE","luy":"luy-Latn-KE","luz":"luz-Arab-IR","lv":"lv-Latn-LV","lwl":"lwl-Thai-TH","lzh":"lzh-Hans-CN","lzz":"lzz-Latn-TR","mad":"mad-Latn-ID","maf":"maf-Latn-CM","mag":"mag-Deva-IN","mai":"mai-Deva-IN","mak":"mak-Latn-ID","man":"man-Latn-GM","man-GN":"man-Nkoo-GN","man-Nkoo":"man-Nkoo-GN","mas":"mas-Latn-KE","maw":"maw-Latn-ZZ","maz":"maz-Latn-MX","mbh":"mbh-Latn-ZZ","mbo":"mbo-Latn-ZZ","mbq":"mbq-Latn-ZZ","mbu":"mbu-Latn-ZZ","mbw":"mbw-Latn-ZZ","mci":"mci-Latn-ZZ","mcp":"mcp-Latn-ZZ","mcq":"mcq-Latn-ZZ","mcr":"mcr-Latn-ZZ","mcu":"mcu-Latn-ZZ","mda":"mda-Latn-ZZ","mde":"mde-Arab-ZZ","mdf":"mdf-Cyrl-RU","mdh":"mdh-Latn-PH","mdj":"mdj-Latn-ZZ","mdr":"mdr-Latn-ID","mdx":"mdx-Ethi-ZZ","med":"med-Latn-ZZ","mee":"mee-Latn-ZZ","mek":"mek-Latn-ZZ","men":"men-Latn-SL","mer":"mer-Latn-KE","met":"met-Latn-ZZ","meu":"meu-Latn-ZZ","mfa":"mfa-Arab-TH","mfe":"mfe-Latn-MU","mfn":"mfn-Latn-ZZ","mfo":"mfo-Latn-ZZ","mfq":"mfq-Latn-ZZ","mg":"mg-Latn-MG","mgh":"mgh-Latn-MZ","mgl":"mgl-Latn-ZZ","mgo":"mgo-Latn-CM","mgp":"mgp-Deva-NP","mgy":"mgy-Latn-TZ","mh":"mh-Latn-MH","mhi":"mhi-Latn-ZZ","mhl":"mhl-Latn-ZZ","mi":"mi-Latn-NZ","mif":"mif-Latn-ZZ","min":"min-Latn-ID","mis":"mis-Hatr-IQ","miw":"miw-Latn-ZZ","mk":"mk-Cyrl-MK","mki":"mki-Arab-ZZ","mkl":"mkl-Latn-ZZ","mkp":"mkp-Latn-ZZ","mkw":"mkw-Latn-ZZ","ml":"ml-Mlym-IN","mle":"mle-Latn-ZZ","mlp":"mlp-Latn-ZZ","mls":"mls-Latn-SD","mmo":"mmo-Latn-ZZ","mmu":"mmu-Latn-ZZ","mmx":"mmx-Latn-ZZ","mn":"mn-Cyrl-MN","mn-CN":"mn-Mong-CN","mn-Mong":"mn-Mong-CN","mna":"mna-Latn-ZZ","mnf":"mnf-Latn-ZZ","mni":"mni-Beng-IN","mnw":"mnw-Mymr-MM","moa":"moa-Latn-ZZ","moe":"moe-Latn-CA","moh":"moh-Latn-CA","mos":"mos-Latn-BF","mox":"mox-Latn-ZZ","mpp":"mpp-Latn-ZZ","mps":"mps-Latn-ZZ","mpt":"mpt-Latn-ZZ","mpx":"mpx-Latn-ZZ","mql":"mql-Latn-ZZ","mr":"mr-Deva-IN","mrd":"mrd-Deva-NP","mrj":"mrj-Cyrl-RU","mro":"mro-Mroo-BD","ms":"ms-Latn-MY","ms-CC":"ms-Arab-CC","ms-ID":"ms-Arab-ID","mt":"mt-Latn-MT","mtc":"mtc-Latn-ZZ","mtf":"mtf-Latn-ZZ","mti":"mti-Latn-ZZ","mtr":"mtr-Deva-IN","mua":"mua-Latn-CM","mur":"mur-Latn-ZZ","mus":"mus-Latn-US","mva":"mva-Latn-ZZ","mvn":"mvn-Latn-ZZ","mvy":"mvy-Arab-PK","mwk":"mwk-Latn-ML","mwr":"mwr-Deva-IN","mwv":"mwv-Latn-ID","mxc":"mxc-Latn-ZW","mxm":"mxm-Latn-ZZ","my":"my-Mymr-MM","myk":"myk-Latn-ZZ","mym":"mym-Ethi-ZZ","myv":"myv-Cyrl-RU","myw":"myw-Latn-ZZ","myx":"myx-Latn-UG","myz":"myz-Mand-IR","mzk":"mzk-Latn-ZZ","mzm":"mzm-Latn-ZZ","mzn":"mzn-Arab-IR","mzp":"mzp-Latn-ZZ","mzw":"mzw-Latn-ZZ","mzz":"mzz-Latn-ZZ","na":"na-Latn-NR","nac":"nac-Latn-ZZ","naf":"naf-Latn-ZZ","nak":"nak-Latn-ZZ","nan":"nan-Hans-CN","nap":"nap-Latn-IT","naq":"naq-Latn-NA","nas":"nas-Latn-ZZ","nb":"nb-Latn-NO","nca":"nca-Latn-ZZ","nce":"nce-Latn-ZZ","ncf":"ncf-Latn-ZZ","nch":"nch-Latn-MX","nco":"nco-Latn-ZZ","ncu":"ncu-Latn-ZZ","nd":"nd-Latn-ZW","ndc":"ndc-Latn-MZ","nds":"nds-Latn-DE","ne":"ne-Deva-NP","neb":"neb-Latn-ZZ","new":"new-Deva-NP","nex":"nex-Latn-ZZ","nfr":"nfr-Latn-ZZ","ng":"ng-Latn-NA","nga":"nga-Latn-ZZ","ngb":"ngb-Latn-ZZ","ngl":"ngl-Latn-MZ","nhb":"nhb-Latn-ZZ","nhe":"nhe-Latn-MX","nhw":"nhw-Latn-MX","nif":"nif-Latn-ZZ","nii":"nii-Latn-ZZ","nij":"nij-Latn-ID","nin":"nin-Latn-ZZ","niu":"niu-Latn-NU","niy":"niy-Latn-ZZ","niz":"niz-Latn-ZZ","njo":"njo-Latn-IN","nkg":"nkg-Latn-ZZ","nko":"nko-Latn-ZZ","nl":"nl-Latn-NL","nmg":"nmg-Latn-CM","nmz":"nmz-Latn-ZZ","nn":"nn-Latn-NO","nnf":"nnf-Latn-ZZ","nnh":"nnh-Latn-CM","nnk":"nnk-Latn-ZZ","nnm":"nnm-Latn-ZZ","no":"no-Latn-NO","nod":"nod-Lana-TH","noe":"noe-Deva-IN","non":"non-Runr-SE","nop":"nop-Latn-ZZ","nou":"nou-Latn-ZZ","nqo":"nqo-Nkoo-GN","nr":"nr-Latn-ZA","nrb":"nrb-Latn-ZZ","nsk":"nsk-Cans-CA","nsn":"nsn-Latn-ZZ","nso":"nso-Latn-ZA","nss":"nss-Latn-ZZ","ntm":"ntm-Latn-ZZ","ntr":"ntr-Latn-ZZ","nui":"nui-Latn-ZZ","nup":"nup-Latn-ZZ","nus":"nus-Latn-SS","nuv":"nuv-Latn-ZZ","nux":"nux-Latn-ZZ","nv":"nv-Latn-US","nwb":"nwb-Latn-ZZ","nxq":"nxq-Latn-CN","nxr":"nxr-Latn-ZZ","ny":"ny-Latn-MW","nym":"nym-Latn-TZ","nyn":"nyn-Latn-UG","nzi":"nzi-Latn-GH","oc":"oc-Latn-FR","ogc":"ogc-Latn-ZZ","okr":"okr-Latn-ZZ","okv":"okv-Latn-ZZ","om":"om-Latn-ET","ong":"ong-Latn-ZZ","onn":"onn-Latn-ZZ","ons":"ons-Latn-ZZ","opm":"opm-Latn-ZZ","or":"or-Orya-IN","oro":"oro-Latn-ZZ","oru":"oru-Arab-ZZ","os":"os-Cyrl-GE","osa":"osa-Osge-US","ota":"ota-Arab-ZZ","otk":"otk-Orkh-MN","ozm":"ozm-Latn-ZZ","pa":"pa-Guru-IN","pa-Arab":"pa-Arab-PK","pa-PK":"pa-Arab-PK","pag":"pag-Latn-PH","pal":"pal-Phli-IR","pal-Phlp":"pal-Phlp-CN","pam":"pam-Latn-PH","pap":"pap-Latn-AW","pau":"pau-Latn-PW","pbi":"pbi-Latn-ZZ","pcd":"pcd-Latn-FR","pcm":"pcm-Latn-NG","pdc":"pdc-Latn-US","pdt":"pdt-Latn-CA","ped":"ped-Latn-ZZ","peo":"peo-Xpeo-IR","pex":"pex-Latn-ZZ","pfl":"pfl-Latn-DE","phl":"phl-Arab-ZZ","phn":"phn-Phnx-LB","pil":"pil-Latn-ZZ","pip":"pip-Latn-ZZ","pka":"pka-Brah-IN","pko":"pko-Latn-KE","pl":"pl-Latn-PL","pla":"pla-Latn-ZZ","pms":"pms-Latn-IT","png":"png-Latn-ZZ","pnn":"pnn-Latn-ZZ","pnt":"pnt-Grek-GR","pon":"pon-Latn-FM","ppo":"ppo-Latn-ZZ","pra":"pra-Khar-PK","prd":"prd-Arab-IR","prg":"prg-Latn-001","ps":"ps-Arab-AF","pss":"pss-Latn-ZZ","pt":"pt-Latn-BR","ptp":"ptp-Latn-ZZ","puu":"puu-Latn-GA","pwa":"pwa-Latn-ZZ","qu":"qu-Latn-PE","quc":"quc-Latn-GT","qug":"qug-Latn-EC","rai":"rai-Latn-ZZ","raj":"raj-Deva-IN","rao":"rao-Latn-ZZ","rcf":"rcf-Latn-RE","rej":"rej-Latn-ID","rel":"rel-Latn-ZZ","res":"res-Latn-ZZ","rgn":"rgn-Latn-IT","rhg":"rhg-Arab-ZZ","ria":"ria-Latn-IN","rif":"rif-Tfng-MA","rif-NL":"rif-Latn-NL","rjs":"rjs-Deva-NP","rkt":"rkt-Beng-BD","rm":"rm-Latn-CH","rmf":"rmf-Latn-FI","rmo":"rmo-Latn-CH","rmt":"rmt-Arab-IR","rmu":"rmu-Latn-SE","rn":"rn-Latn-BI","rna":"rna-Latn-ZZ","rng":"rng-Latn-MZ","ro":"ro-Latn-RO","rob":"rob-Latn-ID","rof":"rof-Latn-TZ","roo":"roo-Latn-ZZ","rro":"rro-Latn-ZZ","rtm":"rtm-Latn-FJ","ru":"ru-Cyrl-RU","rue":"rue-Cyrl-UA","rug":"rug-Latn-SB","rw":"rw-Latn-RW","rwk":"rwk-Latn-TZ","rwo":"rwo-Latn-ZZ","ryu":"ryu-Kana-JP","sa":"sa-Deva-IN","saf":"saf-Latn-GH","sah":"sah-Cyrl-RU","saq":"saq-Latn-KE","sas":"sas-Latn-ID","sat":"sat-Latn-IN","sav":"sav-Latn-SN","saz":"saz-Saur-IN","sba":"sba-Latn-ZZ","sbe":"sbe-Latn-ZZ","sbp":"sbp-Latn-TZ","sc":"sc-Latn-IT","sck":"sck-Deva-IN","scl":"scl-Arab-ZZ","scn":"scn-Latn-IT","sco":"sco-Latn-GB","scs":"scs-Latn-CA","sd":"sd-Arab-PK","sd-Deva":"sd-Deva-IN","sd-Khoj":"sd-Khoj-IN","sd-Sind":"sd-Sind-IN","sdc":"sdc-Latn-IT","sdh":"sdh-Arab-IR","se":"se-Latn-NO","sef":"sef-Latn-CI","seh":"seh-Latn-MZ","sei":"sei-Latn-MX","ses":"ses-Latn-ML","sg":"sg-Latn-CF","sga":"sga-Ogam-IE","sgs":"sgs-Latn-LT","sgw":"sgw-Ethi-ZZ","sgz":"sgz-Latn-ZZ","shi":"shi-Tfng-MA","shk":"shk-Latn-ZZ","shn":"shn-Mymr-MM","shu":"shu-Arab-ZZ","si":"si-Sinh-LK","sid":"sid-Latn-ET","sig":"sig-Latn-ZZ","sil":"sil-Latn-ZZ","sim":"sim-Latn-ZZ","sjr":"sjr-Latn-ZZ","sk":"sk-Latn-SK","skc":"skc-Latn-ZZ","skr":"skr-Arab-PK","sks":"sks-Latn-ZZ","sl":"sl-Latn-SI","sld":"sld-Latn-ZZ","sli":"sli-Latn-PL","sll":"sll-Latn-ZZ","sly":"sly-Latn-ID","sm":"sm-Latn-WS","sma":"sma-Latn-SE","smj":"smj-Latn-SE","smn":"smn-Latn-FI","smp":"smp-Samr-IL","smq":"smq-Latn-ZZ","sms":"sms-Latn-FI","sn":"sn-Latn-ZW","snc":"snc-Latn-ZZ","snk":"snk-Latn-ML","snp":"snp-Latn-ZZ","snx":"snx-Latn-ZZ","sny":"sny-Latn-ZZ","so":"so-Latn-SO","sok":"sok-Latn-ZZ","soq":"soq-Latn-ZZ","sou":"sou-Thai-TH","soy":"soy-Latn-ZZ","spd":"spd-Latn-ZZ","spl":"spl-Latn-ZZ","sps":"sps-Latn-ZZ","sq":"sq-Latn-AL","sr":"sr-Cyrl-RS","sr-ME":"sr-Latn-ME","sr-RO":"sr-Latn-RO","sr-RU":"sr-Latn-RU","sr-TR":"sr-Latn-TR","srb":"srb-Sora-IN","srn":"srn-Latn-SR","srr":"srr-Latn-SN","srx":"srx-Deva-IN","ss":"ss-Latn-ZA","ssd":"ssd-Latn-ZZ","ssg":"ssg-Latn-ZZ","ssy":"ssy-Latn-ER","st":"st-Latn-ZA","stk":"stk-Latn-ZZ","stq":"stq-Latn-DE","su":"su-Latn-ID","sua":"sua-Latn-ZZ","sue":"sue-Latn-ZZ","suk":"suk-Latn-TZ","sur":"sur-Latn-ZZ","sus":"sus-Latn-GN","sv":"sv-Latn-SE","sw":"sw-Latn-TZ","swb":"swb-Arab-YT","swc":"swc-Latn-CD","swg":"swg-Latn-DE","swp":"swp-Latn-ZZ","swv":"swv-Deva-IN","sxn":"sxn-Latn-ID","sxw":"sxw-Latn-ZZ","syl":"syl-Beng-BD","syr":"syr-Syrc-IQ","szl":"szl-Latn-PL","ta":"ta-Taml-IN","taj":"taj-Deva-NP","tal":"tal-Latn-ZZ","tan":"tan-Latn-ZZ","taq":"taq-Latn-ZZ","tbc":"tbc-Latn-ZZ","tbd":"tbd-Latn-ZZ","tbf":"tbf-Latn-ZZ","tbg":"tbg-Latn-ZZ","tbo":"tbo-Latn-ZZ","tbw":"tbw-Latn-PH","tbz":"tbz-Latn-ZZ","tci":"tci-Latn-ZZ","tcy":"tcy-Knda-IN","tdd":"tdd-Tale-CN","tdg":"tdg-Deva-NP","tdh":"tdh-Deva-NP","te":"te-Telu-IN","ted":"ted-Latn-ZZ","tem":"tem-Latn-SL","teo":"teo-Latn-UG","tet":"tet-Latn-TL","tfi":"tfi-Latn-ZZ","tg":"tg-Cyrl-TJ","tg-Arab":"tg-Arab-PK","tg-PK":"tg-Arab-PK","tgc":"tgc-Latn-ZZ","tgo":"tgo-Latn-ZZ","tgu":"tgu-Latn-ZZ","th":"th-Thai-TH","thl":"thl-Deva-NP","thq":"thq-Deva-NP","thr":"thr-Deva-NP","ti":"ti-Ethi-ET","tif":"tif-Latn-ZZ","tig":"tig-Ethi-ER","tik":"tik-Latn-ZZ","tim":"tim-Latn-ZZ","tio":"tio-Latn-ZZ","tiv":"tiv-Latn-NG","tk":"tk-Latn-TM","tkl":"tkl-Latn-TK","tkr":"tkr-Latn-AZ","tkt":"tkt-Deva-NP","tl":"tl-Latn-PH","tlf":"tlf-Latn-ZZ","tlx":"tlx-Latn-ZZ","tly":"tly-Latn-AZ","tmh":"tmh-Latn-NE","tmy":"tmy-Latn-ZZ","tn":"tn-Latn-ZA","tnh":"tnh-Latn-ZZ","to":"to-Latn-TO","tof":"tof-Latn-ZZ","tog":"tog-Latn-MW","toq":"toq-Latn-ZZ","tpi":"tpi-Latn-PG","tpm":"tpm-Latn-ZZ","tpz":"tpz-Latn-ZZ","tqo":"tqo-Latn-ZZ","tr":"tr-Latn-TR","tru":"tru-Latn-TR","trv":"trv-Latn-TW","trw":"trw-Arab-ZZ","ts":"ts-Latn-ZA","tsd":"tsd-Grek-GR","tsf":"tsf-Deva-NP","tsg":"tsg-Latn-PH","tsj":"tsj-Tibt-BT","tsw":"tsw-Latn-ZZ","tt":"tt-Cyrl-RU","ttd":"ttd-Latn-ZZ","tte":"tte-Latn-ZZ","ttj":"ttj-Latn-UG","ttr":"ttr-Latn-ZZ","tts":"tts-Thai-TH","ttt":"ttt-Latn-AZ","tuh":"tuh-Latn-ZZ","tul":"tul-Latn-ZZ","tum":"tum-Latn-MW","tuq":"tuq-Latn-ZZ","tvd":"tvd-Latn-ZZ","tvl":"tvl-Latn-TV","tvu":"tvu-Latn-ZZ","twh":"twh-Latn-ZZ","twq":"twq-Latn-NE","txg":"txg-Tang-CN","ty":"ty-Latn-PF","tya":"tya-Latn-ZZ","tyv":"tyv-Cyrl-RU","tzm":"tzm-Latn-MA","ubu":"ubu-Latn-ZZ","udm":"udm-Cyrl-RU","ug":"ug-Arab-CN","ug-Cyrl":"ug-Cyrl-KZ","ug-KZ":"ug-Cyrl-KZ","ug-MN":"ug-Cyrl-MN","uga":"uga-Ugar-SY","uk":"uk-Cyrl-UA","uli":"uli-Latn-FM","umb":"umb-Latn-AO","und":"en-Latn-US","und-002":"en-Latn-NG","und-003":"en-Latn-US","und-005":"pt-Latn-BR","und-009":"en-Latn-AU","und-011":"en-Latn-NG","und-013":"es-Latn-MX","und-014":"sw-Latn-TZ","und-015":"ar-Arab-EG","und-017":"sw-Latn-CD","und-018":"en-Latn-ZA","und-019":"en-Latn-US","und-021":"en-Latn-US","und-029":"es-Latn-CU","und-030":"zh-Hans-CN","und-034":"hi-Deva-IN","und-035":"id-Latn-ID","und-039":"it-Latn-IT","und-053":"en-Latn-AU","und-054":"en-Latn-PG","und-057":"en-Latn-GU","und-061":"sm-Latn-WS","und-142":"zh-Hans-CN","und-143":"uz-Latn-UZ","und-145":"ar-Arab-SA","und-150":"ru-Cyrl-RU","und-151":"ru-Cyrl-RU","und-154":"en-Latn-GB","und-155":"de-Latn-DE","und-202":"en-Latn-NG","und-419":"es-Latn-419","und-AD":"ca-Latn-AD","und-Adlm":"ff-Adlm-GN","und-AE":"ar-Arab-AE","und-AF":"fa-Arab-AF","und-Aghb":"lez-Aghb-RU","und-Ahom":"aho-Ahom-IN","und-AL":"sq-Latn-AL","und-AM":"hy-Armn-AM","und-AO":"pt-Latn-AO","und-AQ":"und-Latn-AQ","und-AR":"es-Latn-AR","und-Arab":"ar-Arab-EG","und-Arab-CC":"ms-Arab-CC","und-Arab-CN":"ug-Arab-CN","und-Arab-GB":"ks-Arab-GB","und-Arab-ID":"ms-Arab-ID","und-Arab-IN":"ur-Arab-IN","und-Arab-KH":"cja-Arab-KH","und-Arab-MN":"kk-Arab-MN","und-Arab-MU":"ur-Arab-MU","und-Arab-NG":"ha-Arab-NG","und-Arab-PK":"ur-Arab-PK","und-Arab-TG":"apd-Arab-TG","und-Arab-TH":"mfa-Arab-TH","und-Arab-TJ":"fa-Arab-TJ","und-Arab-TR":"az-Arab-TR","und-Arab-YT":"swb-Arab-YT","und-Armi":"arc-Armi-IR","und-Armn":"hy-Armn-AM","und-AS":"sm-Latn-AS","und-AT":"de-Latn-AT","und-Avst":"ae-Avst-IR","und-AW":"nl-Latn-AW","und-AX":"sv-Latn-AX","und-AZ":"az-Latn-AZ","und-BA":"bs-Latn-BA","und-Bali":"ban-Bali-ID","und-Bamu":"bax-Bamu-CM","und-Bass":"bsq-Bass-LR","und-Batk":"bbc-Batk-ID","und-BD":"bn-Beng-BD","und-BE":"nl-Latn-BE","und-Beng":"bn-Beng-BD","und-BF":"fr-Latn-BF","und-BG":"bg-Cyrl-BG","und-BH":"ar-Arab-BH","und-Bhks":"sa-Bhks-IN","und-BI":"rn-Latn-BI","und-BJ":"fr-Latn-BJ","und-BL":"fr-Latn-BL","und-BN":"ms-Latn-BN","und-BO":"es-Latn-BO","und-Bopo":"zh-Bopo-TW","und-BQ":"pap-Latn-BQ","und-BR":"pt-Latn-BR","und-Brah":"pka-Brah-IN","und-Brai":"fr-Brai-FR","und-BT":"dz-Tibt-BT","und-Bugi":"bug-Bugi-ID","und-Buhd":"bku-Buhd-PH","und-BV":"und-Latn-BV","und-BY":"be-Cyrl-BY","und-Cakm":"ccp-Cakm-BD","und-Cans":"cr-Cans-CA","und-Cari":"xcr-Cari-TR","und-CD":"sw-Latn-CD","und-CF":"fr-Latn-CF","und-CG":"fr-Latn-CG","und-CH":"de-Latn-CH","und-Cham":"cjm-Cham-VN","und-Cher":"chr-Cher-US","und-CI":"fr-Latn-CI","und-CL":"es-Latn-CL","und-CM":"fr-Latn-CM","und-CN":"zh-Hans-CN","und-CO":"es-Latn-CO","und-Copt":"cop-Copt-EG","und-CP":"und-Latn-CP","und-Cprt":"grc-Cprt-CY","und-CR":"es-Latn-CR","und-CU":"es-Latn-CU","und-CV":"pt-Latn-CV","und-CW":"pap-Latn-CW","und-CY":"el-Grek-CY","und-Cyrl":"ru-Cyrl-RU","und-Cyrl-AL":"mk-Cyrl-AL","und-Cyrl-BA":"sr-Cyrl-BA","und-Cyrl-GE":"ab-Cyrl-GE","und-Cyrl-GR":"mk-Cyrl-GR","und-Cyrl-MD":"uk-Cyrl-MD","und-Cyrl-RO":"bg-Cyrl-RO","und-Cyrl-SK":"uk-Cyrl-SK","und-Cyrl-TR":"kbd-Cyrl-TR","und-Cyrl-XK":"sr-Cyrl-XK","und-CZ":"cs-Latn-CZ","und-DE":"de-Latn-DE","und-Deva":"hi-Deva-IN","und-Deva-BT":"ne-Deva-BT","und-Deva-FJ":"hif-Deva-FJ","und-Deva-MU":"bho-Deva-MU","und-Deva-PK":"btv-Deva-PK","und-DJ":"aa-Latn-DJ","und-DK":"da-Latn-DK","und-DO":"es-Latn-DO","und-Dupl":"fr-Dupl-FR","und-DZ":"ar-Arab-DZ","und-EA":"es-Latn-EA","und-EC":"es-Latn-EC","und-EE":"et-Latn-EE","und-EG":"ar-Arab-EG","und-Egyp":"egy-Egyp-EG","und-EH":"ar-Arab-EH","und-Elba":"sq-Elba-AL","und-ER":"ti-Ethi-ER","und-ES":"es-Latn-ES","und-ET":"am-Ethi-ET","und-Ethi":"am-Ethi-ET","und-EU":"en-Latn-GB","und-EZ":"de-Latn-EZ","und-FI":"fi-Latn-FI","und-FO":"fo-Latn-FO","und-FR":"fr-Latn-FR","und-GA":"fr-Latn-GA","und-GE":"ka-Geor-GE","und-Geor":"ka-Geor-GE","und-GF":"fr-Latn-GF","und-GH":"ak-Latn-GH","und-GL":"kl-Latn-GL","und-Glag":"cu-Glag-BG","und-GN":"fr-Latn-GN","und-Gonm":"gon-Gonm-IN","und-Goth":"got-Goth-UA","und-GP":"fr-Latn-GP","und-GQ":"es-Latn-GQ","und-GR":"el-Grek-GR","und-Gran":"sa-Gran-IN","und-Grek":"el-Grek-GR","und-Grek-TR":"bgx-Grek-TR","und-GS":"und-Latn-GS","und-GT":"es-Latn-GT","und-Gujr":"gu-Gujr-IN","und-Guru":"pa-Guru-IN","und-GW":"pt-Latn-GW","und-Hanb":"zh-Hanb-TW","und-Hang":"ko-Hang-KR","und-Hani":"zh-Hani-CN","und-Hano":"hnn-Hano-PH","und-Hans":"zh-Hans-CN","und-Hant":"zh-Hant-TW","und-Hatr":"mis-Hatr-IQ","und-Hebr":"he-Hebr-IL","und-Hebr-CA":"yi-Hebr-CA","und-Hebr-GB":"yi-Hebr-GB","und-Hebr-SE":"yi-Hebr-SE","und-Hebr-UA":"yi-Hebr-UA","und-Hebr-US":"yi-Hebr-US","und-Hira":"ja-Hira-JP","und-HK":"zh-Hant-HK","und-Hluw":"hlu-Hluw-TR","und-HM":"und-Latn-HM","und-Hmng":"hnj-Hmng-LA","und-HN":"es-Latn-HN","und-HR":"hr-Latn-HR","und-HT":"ht-Latn-HT","und-HU":"hu-Latn-HU","und-Hung":"hu-Hung-HU","und-IC":"es-Latn-IC","und-ID":"id-Latn-ID","und-IL":"he-Hebr-IL","und-IN":"hi-Deva-IN","und-IQ":"ar-Arab-IQ","und-IR":"fa-Arab-IR","und-IS":"is-Latn-IS","und-IT":"it-Latn-IT","und-Ital":"ett-Ital-IT","und-Jamo":"ko-Jamo-KR","und-Java":"jv-Java-ID","und-JO":"ar-Arab-JO","und-JP":"ja-Jpan-JP","und-Jpan":"ja-Jpan-JP","und-Kali":"eky-Kali-MM","und-Kana":"ja-Kana-JP","und-KE":"sw-Latn-KE","und-KG":"ky-Cyrl-KG","und-KH":"km-Khmr-KH","und-Khar":"pra-Khar-PK","und-Khmr":"km-Khmr-KH","und-Khoj":"sd-Khoj-IN","und-KM":"ar-Arab-KM","und-Knda":"kn-Knda-IN","und-Kore":"ko-Kore-KR","und-KP":"ko-Kore-KP","und-KR":"ko-Kore-KR","und-Kthi":"bho-Kthi-IN","und-KW":"ar-Arab-KW","und-KZ":"ru-Cyrl-KZ","und-LA":"lo-Laoo-LA","und-Lana":"nod-Lana-TH","und-Laoo":"lo-Laoo-LA","und-Latn-AF":"tk-Latn-AF","und-Latn-AM":"ku-Latn-AM","und-Latn-CN":"za-Latn-CN","und-Latn-CY":"tr-Latn-CY","und-Latn-DZ":"fr-Latn-DZ","und-Latn-ET":"en-Latn-ET","und-Latn-GE":"ku-Latn-GE","und-Latn-IR":"tk-Latn-IR","und-Latn-KM":"fr-Latn-KM","und-Latn-MA":"fr-Latn-MA","und-Latn-MK":"sq-Latn-MK","und-Latn-MM":"kac-Latn-MM","und-Latn-MO":"pt-Latn-MO","und-Latn-MR":"fr-Latn-MR","und-Latn-RU":"krl-Latn-RU","und-Latn-SY":"fr-Latn-SY","und-Latn-TN":"fr-Latn-TN","und-Latn-TW":"trv-Latn-TW","und-Latn-UA":"pl-Latn-UA","und-LB":"ar-Arab-LB","und-Lepc":"lep-Lepc-IN","und-LI":"de-Latn-LI","und-Limb":"lif-Limb-IN","und-Lina":"lab-Lina-GR","und-Linb":"grc-Linb-GR","und-Lisu":"lis-Lisu-CN","und-LK":"si-Sinh-LK","und-LS":"st-Latn-LS","und-LT":"lt-Latn-LT","und-LU":"fr-Latn-LU","und-LV":"lv-Latn-LV","und-LY":"ar-Arab-LY","und-Lyci":"xlc-Lyci-TR","und-Lydi":"xld-Lydi-TR","und-MA":"ar-Arab-MA","und-Mahj":"hi-Mahj-IN","und-Mand":"myz-Mand-IR","und-Mani":"xmn-Mani-CN","und-Marc":"bo-Marc-CN","und-MC":"fr-Latn-MC","und-MD":"ro-Latn-MD","und-ME":"sr-Latn-ME","und-Mend":"men-Mend-SL","und-Merc":"xmr-Merc-SD","und-Mero":"xmr-Mero-SD","und-MF":"fr-Latn-MF","und-MG":"mg-Latn-MG","und-MK":"mk-Cyrl-MK","und-ML":"bm-Latn-ML","und-Mlym":"ml-Mlym-IN","und-MM":"my-Mymr-MM","und-MN":"mn-Cyrl-MN","und-MO":"zh-Hant-MO","und-Modi":"mr-Modi-IN","und-Mong":"mn-Mong-CN","und-MQ":"fr-Latn-MQ","und-MR":"ar-Arab-MR","und-Mroo":"mro-Mroo-BD","und-MT":"mt-Latn-MT","und-Mtei":"mni-Mtei-IN","und-MU":"mfe-Latn-MU","und-Mult":"skr-Mult-PK","und-MV":"dv-Thaa-MV","und-MX":"es-Latn-MX","und-MY":"ms-Latn-MY","und-Mymr":"my-Mymr-MM","und-Mymr-IN":"kht-Mymr-IN","und-Mymr-TH":"mnw-Mymr-TH","und-MZ":"pt-Latn-MZ","und-NA":"af-Latn-NA","und-Narb":"xna-Narb-SA","und-Nbat":"arc-Nbat-JO","und-NC":"fr-Latn-NC","und-NE":"ha-Latn-NE","und-Newa":"new-Newa-NP","und-NI":"es-Latn-NI","und-Nkoo":"man-Nkoo-GN","und-NL":"nl-Latn-NL","und-NO":"nb-Latn-NO","und-NP":"ne-Deva-NP","und-Nshu":"zhx-Nshu-CN","und-Ogam":"sga-Ogam-IE","und-Olck":"sat-Olck-IN","und-OM":"ar-Arab-OM","und-Orkh":"otk-Orkh-MN","und-Orya":"or-Orya-IN","und-Osge":"osa-Osge-US","und-Osma":"so-Osma-SO","und-PA":"es-Latn-PA","und-Palm":"arc-Palm-SY","und-Pauc":"ctd-Pauc-MM","und-PE":"es-Latn-PE","und-Perm":"kv-Perm-RU","und-PF":"fr-Latn-PF","und-PG":"tpi-Latn-PG","und-PH":"fil-Latn-PH","und-Phag":"lzh-Phag-CN","und-Phli":"pal-Phli-IR","und-Phlp":"pal-Phlp-CN","und-Phnx":"phn-Phnx-LB","und-PK":"ur-Arab-PK","und-PL":"pl-Latn-PL","und-Plrd":"hmd-Plrd-CN","und-PM":"fr-Latn-PM","und-PR":"es-Latn-PR","und-Prti":"xpr-Prti-IR","und-PS":"ar-Arab-PS","und-PT":"pt-Latn-PT","und-PW":"pau-Latn-PW","und-PY":"gn-Latn-PY","und-QA":"ar-Arab-QA","und-QO":"en-Latn-IO","und-RE":"fr-Latn-RE","und-Rjng":"rej-Rjng-ID","und-RO":"ro-Latn-RO","und-RS":"sr-Cyrl-RS","und-RU":"ru-Cyrl-RU","und-Runr":"non-Runr-SE","und-RW":"rw-Latn-RW","und-SA":"ar-Arab-SA","und-Samr":"smp-Samr-IL","und-Sarb":"xsa-Sarb-YE","und-Saur":"saz-Saur-IN","und-SC":"fr-Latn-SC","und-SD":"ar-Arab-SD","und-SE":"sv-Latn-SE","und-Sgnw":"ase-Sgnw-US","und-Shaw":"en-Shaw-GB","und-Shrd":"sa-Shrd-IN","und-SI":"sl-Latn-SI","und-Sidd":"sa-Sidd-IN","und-Sind":"sd-Sind-IN","und-Sinh":"si-Sinh-LK","und-SJ":"nb-Latn-SJ","und-SK":"sk-Latn-SK","und-SM":"it-Latn-SM","und-SN":"fr-Latn-SN","und-SO":"so-Latn-SO","und-Sora":"srb-Sora-IN","und-Soyo":"cmg-Soyo-MN","und-SR":"nl-Latn-SR","und-ST":"pt-Latn-ST","und-Sund":"su-Sund-ID","und-SV":"es-Latn-SV","und-SY":"ar-Arab-SY","und-Sylo":"syl-Sylo-BD","und-Syrc":"syr-Syrc-IQ","und-Tagb":"tbw-Tagb-PH","und-Takr":"doi-Takr-IN","und-Tale":"tdd-Tale-CN","und-Talu":"khb-Talu-CN","und-Taml":"ta-Taml-IN","und-Tang":"txg-Tang-CN","und-Tavt":"blt-Tavt-VN","und-TD":"fr-Latn-TD","und-Telu":"te-Telu-IN","und-TF":"fr-Latn-TF","und-Tfng":"zgh-Tfng-MA","und-TG":"fr-Latn-TG","und-Tglg":"fil-Tglg-PH","und-TH":"th-Thai-TH","und-Thaa":"dv-Thaa-MV","und-Thai":"th-Thai-TH","und-Thai-CN":"lcp-Thai-CN","und-Thai-KH":"kdt-Thai-KH","und-Thai-LA":"kdt-Thai-LA","und-Tibt":"bo-Tibt-CN","und-Tirh":"mai-Tirh-IN","und-TJ":"tg-Cyrl-TJ","und-TK":"tkl-Latn-TK","und-TL":"pt-Latn-TL","und-TM":"tk-Latn-TM","und-TN":"ar-Arab-TN","und-TO":"to-Latn-TO","und-TR":"tr-Latn-TR","und-TV":"tvl-Latn-TV","und-TW":"zh-Hant-TW","und-TZ":"sw-Latn-TZ","und-UA":"uk-Cyrl-UA","und-UG":"sw-Latn-UG","und-Ugar":"uga-Ugar-SY","und-UY":"es-Latn-UY","und-UZ":"uz-Latn-UZ","und-VA":"it-Latn-VA","und-Vaii":"vai-Vaii-LR","und-VE":"es-Latn-VE","und-VN":"vi-Latn-VN","und-VU":"bi-Latn-VU","und-Wara":"hoc-Wara-IN","und-WF":"fr-Latn-WF","und-WS":"sm-Latn-WS","und-XK":"sq-Latn-XK","und-Xpeo":"peo-Xpeo-IR","und-Xsux":"akk-Xsux-IQ","und-YE":"ar-Arab-YE","und-Yiii":"ii-Yiii-CN","und-YT":"fr-Latn-YT","und-Zanb":"cmg-Zanb-MN","und-ZW":"sn-Latn-ZW","unr":"unr-Beng-IN","unr-Deva":"unr-Deva-NP","unr-NP":"unr-Deva-NP","unx":"unx-Beng-IN","ur":"ur-Arab-PK","uri":"uri-Latn-ZZ","urt":"urt-Latn-ZZ","urw":"urw-Latn-ZZ","usa":"usa-Latn-ZZ","utr":"utr-Latn-ZZ","uvh":"uvh-Latn-ZZ","uvl":"uvl-Latn-ZZ","uz":"uz-Latn-UZ","uz-AF":"uz-Arab-AF","uz-Arab":"uz-Arab-AF","uz-CN":"uz-Cyrl-CN","vag":"vag-Latn-ZZ","vai":"vai-Vaii-LR","van":"van-Latn-ZZ","ve":"ve-Latn-ZA","vec":"vec-Latn-IT","vep":"vep-Latn-RU","vi":"vi-Latn-VN","vic":"vic-Latn-SX","viv":"viv-Latn-ZZ","vls":"vls-Latn-BE","vmf":"vmf-Latn-DE","vmw":"vmw-Latn-MZ","vo":"vo-Latn-001","vot":"vot-Latn-RU","vro":"vro-Latn-EE","vun":"vun-Latn-TZ","vut":"vut-Latn-ZZ","wa":"wa-Latn-BE","wae":"wae-Latn-CH","waj":"waj-Latn-ZZ","wal":"wal-Ethi-ET","wan":"wan-Latn-ZZ","war":"war-Latn-PH","wbp":"wbp-Latn-AU","wbq":"wbq-Telu-IN","wbr":"wbr-Deva-IN","wci":"wci-Latn-ZZ","wer":"wer-Latn-ZZ","wgi":"wgi-Latn-ZZ","whg":"whg-Latn-ZZ","wib":"wib-Latn-ZZ","wiu":"wiu-Latn-ZZ","wiv":"wiv-Latn-ZZ","wja":"wja-Latn-ZZ","wji":"wji-Latn-ZZ","wls":"wls-Latn-WF","wmo":"wmo-Latn-ZZ","wnc":"wnc-Latn-ZZ","wni":"wni-Arab-KM","wnu":"wnu-Latn-ZZ","wo":"wo-Latn-SN","wob":"wob-Latn-ZZ","wos":"wos-Latn-ZZ","wrs":"wrs-Latn-ZZ","wsk":"wsk-Latn-ZZ","wtm":"wtm-Deva-IN","wuu":"wuu-Hans-CN","wuv":"wuv-Latn-ZZ","wwa":"wwa-Latn-ZZ","xav":"xav-Latn-BR","xbi":"xbi-Latn-ZZ","xcr":"xcr-Cari-TR","xes":"xes-Latn-ZZ","xh":"xh-Latn-ZA","xla":"xla-Latn-ZZ","xlc":"xlc-Lyci-TR","xld":"xld-Lydi-TR","xmf":"xmf-Geor-GE","xmn":"xmn-Mani-CN","xmr":"xmr-Merc-SD","xna":"xna-Narb-SA","xnr":"xnr-Deva-IN","xog":"xog-Latn-UG","xon":"xon-Latn-ZZ","xpr":"xpr-Prti-IR","xrb":"xrb-Latn-ZZ","xsa":"xsa-Sarb-YE","xsi":"xsi-Latn-ZZ","xsm":"xsm-Latn-ZZ","xsr":"xsr-Deva-NP","xwe":"xwe-Latn-ZZ","yam":"yam-Latn-ZZ","yao":"yao-Latn-MZ","yap":"yap-Latn-FM","yas":"yas-Latn-ZZ","yat":"yat-Latn-ZZ","yav":"yav-Latn-CM","yay":"yay-Latn-ZZ","yaz":"yaz-Latn-ZZ","yba":"yba-Latn-ZZ","ybb":"ybb-Latn-CM","yby":"yby-Latn-ZZ","yer":"yer-Latn-ZZ","ygr":"ygr-Latn-ZZ","ygw":"ygw-Latn-ZZ","yi":"yi-Hebr-001","yko":"yko-Latn-ZZ","yle":"yle-Latn-ZZ","ylg":"ylg-Latn-ZZ","yll":"yll-Latn-ZZ","yml":"yml-Latn-ZZ","yo":"yo-Latn-NG","yon":"yon-Latn-ZZ","yrb":"yrb-Latn-ZZ","yre":"yre-Latn-ZZ","yrl":"yrl-Latn-BR","yss":"yss-Latn-ZZ","yua":"yua-Latn-MX","yue":"yue-Hant-HK","yue-CN":"yue-Hans-CN","yue-Hans":"yue-Hans-CN","yuj":"yuj-Latn-ZZ","yut":"yut-Latn-ZZ","yuw":"yuw-Latn-ZZ","za":"za-Latn-CN","zag":"zag-Latn-SD","zdj":"zdj-Arab-KM","zea":"zea-Latn-NL","zgh":"zgh-Tfng-MA","zh":"zh-Hans-CN","zh-AU":"zh-Hant-AU","zh-BN":"zh-Hant-BN","zh-Bopo":"zh-Bopo-TW","zh-GB":"zh-Hant-GB","zh-GF":"zh-Hant-GF","zh-Hanb":"zh-Hanb-TW","zh-Hant":"zh-Hant-TW","zh-HK":"zh-Hant-HK","zh-ID":"zh-Hant-ID","zh-MO":"zh-Hant-MO","zh-MY":"zh-Hant-MY","zh-PA":"zh-Hant-PA","zh-PF":"zh-Hant-PF","zh-PH":"zh-Hant-PH","zh-SR":"zh-Hant-SR","zh-TH":"zh-Hant-TH","zh-TW":"zh-Hant-TW","zh-US":"zh-Hant-US","zh-VN":"zh-Hant-VN","zhx":"zhx-Nshu-CN","zia":"zia-Latn-ZZ","zlm":"zlm-Latn-TG","zmi":"zmi-Latn-MY","zne":"zne-Latn-ZZ","zu":"zu-Latn-ZA","zza":"zza-Latn-TR"}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/metaZones.json": -/*!************************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/metaZones.json ***! - \************************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13774 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"metaZones":{"metazoneInfo":{"timezone":{"Africa":{"Abidjan":[{"usesMetazone":{"_mzone":"GMT"}}],"Accra":[{"usesMetazone":{"_mzone":"GMT"}}],"Addis_Ababa":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Algiers":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1977-10-20 23:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1977-10-20 23:00","_to":"1979-10-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1979-10-25 23:00","_to":"1981-05-01 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1981-05-01 00:00"}}],"Asmera":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Bamako":[{"usesMetazone":{"_mzone":"GMT"}}],"Bangui":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Banjul":[{"usesMetazone":{"_mzone":"GMT"}}],"Bissau":[{"usesMetazone":{"_mzone":"Africa_FarWestern","_to":"1975-01-01 01:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1975-01-01 01:00"}}],"Blantyre":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Brazzaville":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Bujumbura":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Cairo":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Casablanca":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1984-03-16 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1984-03-16 00:00","_to":"1985-12-31 23:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1985-12-31 23:00"}}],"Ceuta":[{"usesMetazone":{"_mzone":"Europe_Western","_to":"1984-03-16 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1984-03-16 00:00"}}],"Conakry":[{"usesMetazone":{"_mzone":"GMT"}}],"Dakar":[{"usesMetazone":{"_mzone":"GMT"}}],"Dar_es_Salaam":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Djibouti":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Douala":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"El_Aaiun":[{"usesMetazone":{"_mzone":"Africa_FarWestern","_to":"1976-04-14 01:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1976-04-14 01:00"}}],"Freetown":[{"usesMetazone":{"_mzone":"GMT"}}],"Gaborone":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Harare":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Johannesburg":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Juba":[{"usesMetazone":{"_mzone":"Africa_Central","_to":"2000-01-15 10:00"}},{"usesMetazone":{"_mzone":"Africa_Eastern","_from":"2000-01-15 10:00"}}],"Kampala":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Khartoum":[{"usesMetazone":{"_mzone":"Africa_Central","_to":"2000-01-15 10:00"}},{"usesMetazone":{"_mzone":"Africa_Eastern","_from":"2000-01-15 10:00","_to":"2017-10-31 21:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"2017-10-31 21:00"}}],"Kigali":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Kinshasa":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lagos":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Libreville":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lome":[{"usesMetazone":{"_mzone":"GMT"}}],"Luanda":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Lubumbashi":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Lusaka":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Malabo":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Maputo":[{"usesMetazone":{"_mzone":"Africa_Central"}}],"Maseru":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Mbabane":[{"usesMetazone":{"_mzone":"Africa_Southern"}}],"Mogadishu":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Monrovia":[{"usesMetazone":{"_mzone":"Liberia","_to":"1972-05-01 00:45"}},{"usesMetazone":{"_mzone":"GMT","_from":"1972-05-01 00:45"}}],"Nairobi":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Ndjamena":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Niamey":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Nouakchott":[{"usesMetazone":{"_mzone":"GMT"}}],"Ouagadougou":[{"usesMetazone":{"_mzone":"GMT"}}],"Porto-Novo":[{"usesMetazone":{"_mzone":"Africa_Western"}}],"Sao_Tome":[{"usesMetazone":{"_mzone":"GMT"}}],"Tripoli":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"1981-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1981-12-31 22:00","_to":"1990-05-03 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-05-03 23:00","_to":"1996-09-29 22:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1996-09-29 22:00","_to":"1997-10-03 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1997-10-03 22:00","_to":"2012-11-10 00:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"2012-11-10 00:00","_to":"2013-10-25 00:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"2013-10-25 00:00"}}],"Tunis":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Windhoek":[{"usesMetazone":{"_mzone":"Africa_Southern","_to":"1990-03-20 22:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"1990-03-20 22:00","_to":"1994-03-20 22:00"}},{"usesMetazone":{"_mzone":"Africa_Western","_from":"1994-03-20 22:00","_to":"2017-09-03 01:00"}},{"usesMetazone":{"_mzone":"Africa_Central","_from":"2017-09-03 01:00"}}]},"America":{"Adak":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-11-30 10:00"}}],"Anchorage":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 11:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Anguilla":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Antigua":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Araguaina":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Argentina":{"La_Rioja":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-01 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1991-03-01 02:00","_to":"1991-05-07 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-05-07 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Rio_Gallegos":[{"usesMetazone":{"_mzone":"Argentina","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Salta":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00"}}],"San_Juan":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-01 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1991-03-01 02:00","_to":"1991-05-07 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-05-07 04:00","_to":"2004-05-31 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-05-31 03:00","_to":"2004-07-25 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-07-25 04:00"}}],"San_Luis":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-14 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1990-03-14 02:00","_to":"1991-06-01 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-06-01 04:00","_to":"1999-10-03 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"1999-10-03 03:00","_to":"2000-03-03 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2000-03-03 03:00","_to":"2004-05-31 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-05-31 03:00","_to":"2004-07-25 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-07-25 04:00","_to":"2008-01-21 02:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2008-01-21 02:00"}}],"Tucuman":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-13 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-13 04:00"}}],"Ushuaia":[{"usesMetazone":{"_mzone":"Argentina","_to":"2004-05-30 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}]},"Aruba":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Asuncion":[{"usesMetazone":{"_mzone":"Paraguay"}}],"Bahia":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Bahia_Banderas":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1970-01-01 08:00","_to":"2010-04-04 09:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2010-04-04 09:00"}}],"Barbados":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Belem":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Belize":[{"usesMetazone":{"_mzone":"America_Central"}}],"Blanc-Sablon":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Boa_Vista":[{"usesMetazone":{"_mzone":"Amazon"}}],"Bogota":[{"usesMetazone":{"_mzone":"Colombia"}}],"Boise":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Buenos_Aires":[{"usesMetazone":{"_mzone":"Argentina"}}],"Cambridge_Bay":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1999-10-31 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 08:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2000-11-05 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2000-11-05 05:00","_to":"2001-04-01 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"2001-04-01 09:00"}}],"Campo_Grande":[{"usesMetazone":{"_mzone":"Amazon"}}],"Cancun":[{"usesMetazone":{"_mzone":"America_Central","_to":"1981-12-23 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1981-12-23 06:00","_to":"1998-08-02 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1998-08-02 06:00","_to":"2015-02-01 08:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2015-02-01 08:00"}}],"Caracas":[{"usesMetazone":{"_mzone":"Venezuela"}}],"Catamarca":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00","_to":"2004-06-01 03:00"}},{"usesMetazone":{"_mzone":"Argentina_Western","_from":"2004-06-01 03:00","_to":"2004-06-20 04:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-06-20 04:00"}}],"Cayenne":[{"usesMetazone":{"_mzone":"French_Guiana"}}],"Cayman":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Chicago":[{"usesMetazone":{"_mzone":"America_Central"}}],"Chihuahua":[{"usesMetazone":{"_mzone":"America_Central","_to":"1998-04-05 09:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1998-04-05 09:00"}}],"Coral_Harbour":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Cordoba":[{"usesMetazone":{"_mzone":"Argentina","_to":"1991-03-03 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-20 04:00"}}],"Costa_Rica":[{"usesMetazone":{"_mzone":"America_Central"}}],"Creston":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Cuiaba":[{"usesMetazone":{"_mzone":"Amazon"}}],"Curacao":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Danmarkshavn":[{"usesMetazone":{"_mzone":"Greenland_Western","_to":"1996-01-01 03:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1996-01-01 03:00"}}],"Dawson":[{"usesMetazone":{"_mzone":"Yukon","_to":"1973-10-28 09:00"}},{"usesMetazone":{"_mzone":"America_Pacific","_from":"1973-10-28 09:00"}}],"Dawson_Creek":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1972-08-30 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1972-08-30 09:00"}}],"Denver":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Detroit":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Dominica":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Edmonton":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Eirunepe":[{"usesMetazone":{"_mzone":"Acre","_to":"2008-06-24 05:00"}},{"usesMetazone":{"_mzone":"Amazon","_from":"2008-06-24 05:00","_to":"2013-11-10 04:00"}},{"usesMetazone":{"_mzone":"Acre","_from":"2013-11-10 04:00"}}],"El_Salvador":[{"usesMetazone":{"_mzone":"America_Central"}}],"Fort_Nelson":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"2015-03-08 10:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"2015-03-08 10:00"}}],"Fortaleza":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Glace_Bay":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Godthab":[{"usesMetazone":{"_mzone":"Greenland_Western"}}],"Goose_Bay":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1988-04-03 04:01"}},{"usesMetazone":{"_mzone":"Goose_Bay","_from":"1988-04-03 04:01","_to":"1988-10-30 02:01"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"1988-10-30 02:01"}}],"Grand_Turk":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2015-11-01 06:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"2015-11-01 06:00","_to":"2018-03-11 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2018-03-11 07:00"}}],"Grenada":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Guadeloupe":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Guatemala":[{"usesMetazone":{"_mzone":"America_Central"}}],"Guayaquil":[{"usesMetazone":{"_mzone":"Ecuador"}}],"Guyana":[{"usesMetazone":{"_mzone":"Guyana"}}],"Halifax":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Havana":[{"usesMetazone":{"_mzone":"Cuba"}}],"Hermosillo":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1970-01-01 08:00"}}],"Indiana":{"Knox":[{"usesMetazone":{"_mzone":"America_Central","_to":"1991-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1991-10-27 07:00","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00"}}],"Marengo":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1974-01-06 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1974-01-06 07:00","_to":"1974-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1974-10-27 07:00"}}],"Petersburg":[{"usesMetazone":{"_mzone":"America_Central","_to":"1977-10-30 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1977-10-30 07:00","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-11-04 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-11-04 07:00"}}],"Tell_City":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00"}}],"Vevay":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Vincennes":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-11-04 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-11-04 07:00"}}],"Winamac":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"2006-04-02 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2006-04-02 07:00","_to":"2007-03-11 08:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2007-03-11 08:00"}}]},"Indianapolis":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Inuvik":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1979-04-29 10:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1979-04-29 10:00"}}],"Iqaluit":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1999-10-31 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 06:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}],"Jamaica":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Jujuy":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-04 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1991-10-06 04:00"}}],"Juneau":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1980-04-27 10:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1980-04-27 10:00","_to":"1980-10-26 10:00"}},{"usesMetazone":{"_mzone":"America_Pacific","_from":"1980-10-26 10:00","_to":"1983-10-30 09:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 09:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Kentucky":{"Monticello":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}]},"Kralendijk":[{"usesMetazone":{"_mzone":"Atlantic"}}],"La_Paz":[{"usesMetazone":{"_mzone":"Bolivia"}}],"Lima":[{"usesMetazone":{"_mzone":"Peru"}}],"Los_Angeles":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Louisville":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1974-01-06 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1974-01-06 07:00","_to":"1974-10-27 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1974-10-27 07:00"}}],"Lower_Princes":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Maceio":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Managua":[{"usesMetazone":{"_mzone":"America_Central","_to":"1973-05-01 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1973-05-01 06:00","_to":"1975-02-16 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1975-02-16 05:00","_to":"1992-01-01 10:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1992-01-01 10:00","_to":"1992-09-24 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1992-09-24 05:00","_to":"1993-01-01 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1993-01-01 06:00","_to":"1997-01-01 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1997-01-01 05:00"}}],"Manaus":[{"usesMetazone":{"_mzone":"Amazon"}}],"Marigot":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Martinique":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Matamoros":[{"usesMetazone":{"_mzone":"America_Central"}}],"Mazatlan":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1970-01-01 08:00"}},{"usesMetazone":{"_mzone":"Mexico_Pacific","_from":"1970-01-01 08:00"}}],"Mendoza":[{"usesMetazone":{"_mzone":"Argentina","_to":"1990-03-04 02:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"1992-10-18 04:00","_to":"2004-05-23 03:00"}},{"usesMetazone":{"_mzone":"Argentina","_from":"2004-09-26 04:00"}}],"Menominee":[{"usesMetazone":{"_mzone":"America_Eastern","_to":"1973-04-29 07:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1973-04-29 07:00"}}],"Merida":[{"usesMetazone":{"_mzone":"America_Central","_to":"1981-12-23 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1981-12-23 06:00","_to":"1982-12-02 05:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1982-12-02 05:00"}}],"Metlakatla":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"2015-11-01 10:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"2015-11-01 10:00"}}],"Mexico_City":[{"usesMetazone":{"_mzone":"America_Central"}}],"Miquelon":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1980-05-01 04:00"}},{"usesMetazone":{"_mzone":"Pierre_Miquelon","_from":"1980-05-01 04:00"}}],"Moncton":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Monterrey":[{"usesMetazone":{"_mzone":"America_Central"}}],"Montevideo":[{"usesMetazone":{"_mzone":"Uruguay"}}],"Montserrat":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Nassau":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"New_York":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Nipigon":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Nome":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 12:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Noronha":[{"usesMetazone":{"_mzone":"Noronha"}}],"North_Dakota":{"Beulah":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"2010-11-07 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2010-11-07 08:00"}}],"Center":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1992-10-25 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1992-10-25 08:00"}}],"New_Salem":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"2003-10-26 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2003-10-26 08:00"}}]},"Ojinaga":[{"usesMetazone":{"_mzone":"America_Central","_to":"1998-04-05 09:00"}},{"usesMetazone":{"_mzone":"America_Mountain","_from":"1998-04-05 09:00"}}],"Panama":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Pangnirtung":[{"usesMetazone":{"_mzone":"Atlantic","_to":"1995-04-02 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"1995-04-02 06:00","_to":"1999-10-31 06:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1999-10-31 06:00","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00"}}],"Paramaribo":[{"usesMetazone":{"_mzone":"Dutch_Guiana","_to":"1975-11-20 03:30"}},{"usesMetazone":{"_mzone":"Suriname","_from":"1975-11-20 03:30"}}],"Phoenix":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Port_of_Spain":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Port-au-Prince":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Porto_Velho":[{"usesMetazone":{"_mzone":"Amazon"}}],"Puerto_Rico":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Punta_Arenas":[{"usesMetazone":{"_mzone":"Chile","_to":"2016-12-03 23:00"}}],"Rainy_River":[{"usesMetazone":{"_mzone":"America_Central"}}],"Rankin_Inlet":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2001-04-01 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2001-04-01 08:00"}}],"Recife":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Regina":[{"usesMetazone":{"_mzone":"America_Central"}}],"Resolute":[{"usesMetazone":{"_mzone":"America_Central","_to":"2000-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 07:00","_to":"2001-04-01 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2001-04-01 08:00","_to":"2006-10-29 07:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2006-10-29 07:00","_to":"2007-03-11 08:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"2007-03-11 08:00"}}],"Rio_Branco":[{"usesMetazone":{"_mzone":"Acre","_to":"2008-06-24 05:00"}},{"usesMetazone":{"_mzone":"Amazon","_from":"2008-06-24 05:00","_to":"2013-11-10 04:00"}},{"usesMetazone":{"_mzone":"Acre","_from":"2013-11-10 04:00"}}],"Santa_Isabel":[{"usesMetazone":{"_mzone":"Mexico_Northwest"}}],"Santarem":[{"usesMetazone":{"_mzone":"Amazon","_to":"2008-06-24 04:00"}},{"usesMetazone":{"_mzone":"Brasilia","_from":"2008-06-24 04:00"}}],"Santiago":[{"usesMetazone":{"_mzone":"Chile"}}],"Santo_Domingo":[{"usesMetazone":{"_mzone":"Dominican","_to":"1974-10-27 05:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"1974-10-27 05:00","_to":"2000-10-29 06:00"}},{"usesMetazone":{"_mzone":"America_Eastern","_from":"2000-10-29 06:00","_to":"2000-12-03 06:00"}},{"usesMetazone":{"_mzone":"Atlantic","_from":"2000-12-03 06:00"}}],"Sao_Paulo":[{"usesMetazone":{"_mzone":"Brasilia"}}],"Scoresbysund":[{"usesMetazone":{"_mzone":"Greenland_Central","_to":"1981-03-29 02:00"}},{"usesMetazone":{"_mzone":"Greenland_Eastern","_from":"1981-03-29 02:00"}}],"Sitka":[{"usesMetazone":{"_mzone":"America_Pacific","_to":"1983-10-30 09:00"}},{"usesMetazone":{"_mzone":"Yukon","_from":"1983-10-30 09:00","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"St_Barthelemy":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Johns":[{"usesMetazone":{"_mzone":"Newfoundland"}}],"St_Kitts":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Lucia":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Thomas":[{"usesMetazone":{"_mzone":"Atlantic"}}],"St_Vincent":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Swift_Current":[{"usesMetazone":{"_mzone":"America_Mountain","_to":"1972-04-30 09:00"}},{"usesMetazone":{"_mzone":"America_Central","_from":"1972-04-30 09:00"}}],"Tegucigalpa":[{"usesMetazone":{"_mzone":"America_Central"}}],"Thule":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Thunder_Bay":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Tijuana":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Toronto":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Tortola":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Vancouver":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Whitehorse":[{"usesMetazone":{"_mzone":"America_Pacific"}}],"Winnipeg":[{"usesMetazone":{"_mzone":"America_Central"}}],"Yakutat":[{"usesMetazone":{"_mzone":"Yukon","_to":"1983-11-30 09:00"}},{"usesMetazone":{"_mzone":"Alaska","_from":"1983-11-30 09:00"}}],"Yellowknife":[{"usesMetazone":{"_mzone":"America_Mountain"}}]},"Antarctica":{"Casey":[{"usesMetazone":{"_mzone":"Australia_Western","_to":"2009-10-17 18:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2009-10-17 18:00","_to":"2010-03-04 15:00"}},{"usesMetazone":{"_mzone":"Australia_Western","_from":"2010-03-04 15:00","_to":"2011-10-27 18:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2011-10-27 18:00","_to":"2012-02-21 17:00"}},{"usesMetazone":{"_mzone":"Australia_Western","_from":"2012-02-21 17:00","_to":"2016-10-21 16:00"}},{"usesMetazone":{"_mzone":"Casey","_from":"2016-10-21 16:00"}}],"Davis":[{"usesMetazone":{"_mzone":"Davis"}}],"DumontDUrville":[{"usesMetazone":{"_mzone":"DumontDUrville"}}],"Macquarie":[{"usesMetazone":{"_mzone":"Australia_Eastern","_to":"2010-04-03 16:00"}},{"usesMetazone":{"_mzone":"Macquarie","_from":"2010-04-03 16:00"}}],"Mawson":[{"usesMetazone":{"_mzone":"Mawson"}}],"McMurdo":[{"usesMetazone":{"_mzone":"New_Zealand"}}],"Palmer":[{"usesMetazone":{"_mzone":"Argentina","_to":"1982-05-01 03:00"}},{"usesMetazone":{"_mzone":"Chile","_from":"1982-05-01 03:00","_to":"2016-12-03 23:00"}}],"Rothera":[{"usesMetazone":{"_mzone":"Rothera"}}],"Syowa":[{"usesMetazone":{"_mzone":"Syowa"}}],"Troll":[{"usesMetazone":{"_mzone":"GMT"}}],"Vostok":[{"usesMetazone":{"_mzone":"Vostok"}}]},"Arctic":{"Longyearbyen":[{"usesMetazone":{"_mzone":"Europe_Central"}}]},"Asia":{"Aden":[{"usesMetazone":{"_mzone":"Arabian"}}],"Almaty":[{"usesMetazone":{"_mzone":"Almaty","_to":"2004-10-30 20:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Eastern","_from":"2004-10-30 20:00"}}],"Amman":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Anadyr":[{"usesMetazone":{"_mzone":"Anadyr","_to":"2010-03-27 14:00"}},{"usesMetazone":{"_mzone":"Magadan","_from":"2010-03-27 14:00","_to":"2014-10-25 14:00"}},{"usesMetazone":{"_mzone":"Anadyr","_from":"2014-10-25 14:00"}}],"Aqtau":[{"usesMetazone":{"_mzone":"Shevchenko","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Aqtau","_from":"1991-12-15 19:00","_to":"2004-10-30 22:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Aqtobe":[{"usesMetazone":{"_mzone":"Aktyubinsk","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Aqtobe","_from":"1991-12-15 19:00","_to":"2004-10-30 21:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2005-10-30 21:00"}}],"Ashgabat":[{"usesMetazone":{"_mzone":"Ashkhabad","_to":"1991-10-26 20:00"}},{"usesMetazone":{"_mzone":"Turkmenistan","_from":"1991-10-26 20:00"}}],"Atyrau":[{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Baghdad":[{"usesMetazone":{"_mzone":"Arabian"}}],"Bahrain":[{"usesMetazone":{"_mzone":"Gulf","_to":"1972-05-31 20:00"}},{"usesMetazone":{"_mzone":"Arabian","_from":"1972-05-31 20:00"}}],"Baku":[{"usesMetazone":{"_mzone":"Baku","_to":"1991-08-29 20:00"}},{"usesMetazone":{"_mzone":"Azerbaijan","_from":"1991-08-29 20:00"}}],"Bangkok":[{"usesMetazone":{"_mzone":"Indochina"}}],"Beirut":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Bishkek":[{"usesMetazone":{"_mzone":"Frunze","_to":"1991-08-30 20:00"}},{"usesMetazone":{"_mzone":"Kyrgystan","_from":"1991-08-30 20:00"}}],"Brunei":[{"usesMetazone":{"_mzone":"Brunei"}}],"Calcutta":[{"usesMetazone":{"_mzone":"India"}}],"Chita":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"2014-10-25 16:00"}},{"usesMetazone":{"_mzone":"Irkutsk","_from":"2014-10-25 16:00","_to":"2016-03-26 18:00"}},{"usesMetazone":{"_mzone":"Yakutsk","_from":"2016-03-26 18:00"}}],"Choibalsan":[{"usesMetazone":{"_mzone":"Mongolia","_to":"1983-03-31 16:00"}},{"usesMetazone":{"_mzone":"Choibalsan","_from":"1983-03-31 16:00"}}],"Colombo":[{"usesMetazone":{"_mzone":"India","_to":"1996-05-24 18:30"}},{"usesMetazone":{"_mzone":"Lanka","_from":"1996-05-24 18:30","_to":"2006-04-14 18:30"}},{"usesMetazone":{"_mzone":"India","_from":"2006-04-14 18:30"}}],"Damascus":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Dhaka":[{"usesMetazone":{"_mzone":"Dacca","_to":"1971-03-25 18:00"}},{"usesMetazone":{"_mzone":"Bangladesh","_from":"1971-03-25 18:00"}}],"Dili":[{"usesMetazone":{"_mzone":"East_Timor","_to":"1976-05-02 15:00"}},{"usesMetazone":{"_mzone":"Indonesia_Central","_from":"1976-05-02 15:00","_to":"2000-09-16 16:00"}},{"usesMetazone":{"_mzone":"East_Timor","_from":"2000-09-16 16:00"}}],"Dubai":[{"usesMetazone":{"_mzone":"Gulf"}}],"Dushanbe":[{"usesMetazone":{"_mzone":"Dushanbe","_to":"1991-09-08 21:00"}},{"usesMetazone":{"_mzone":"Tajikistan","_from":"1991-09-08 21:00"}}],"Famagusta":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"2016-09-07 21:00"}}],"Gaza":[{"usesMetazone":{"_mzone":"Israel","_to":"1995-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1995-12-31 22:00"}}],"Hebron":[{"usesMetazone":{"_mzone":"Israel","_to":"1995-12-31 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1995-12-31 22:00"}}],"Hong_Kong":[{"usesMetazone":{"_mzone":"Hong_Kong"}}],"Hovd":[{"usesMetazone":{"_mzone":"Hovd"}}],"Irkutsk":[{"usesMetazone":{"_mzone":"Irkutsk"}}],"Jakarta":[{"usesMetazone":{"_mzone":"Indonesia_Western"}}],"Jayapura":[{"usesMetazone":{"_mzone":"Indonesia_Eastern"}}],"Jerusalem":[{"usesMetazone":{"_mzone":"Israel"}}],"Kabul":[{"usesMetazone":{"_mzone":"Afghanistan"}}],"Kamchatka":[{"usesMetazone":{"_mzone":"Kamchatka"}}],"Karachi":[{"usesMetazone":{"_mzone":"Karachi","_to":"1971-03-25 19:00"}},{"usesMetazone":{"_mzone":"Pakistan","_from":"1971-03-25 19:00"}}],"Katmandu":[{"usesMetazone":{"_mzone":"Nepal"}}],"Khandyga":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"2003-12-31 15:00"}},{"usesMetazone":{"_mzone":"Vladivostok","_from":"2003-12-31 15:00","_to":"2011-09-12 13:00"}},{"usesMetazone":{"_mzone":"Yakutsk","_from":"2011-09-12 13:00"}}],"Krasnoyarsk":[{"usesMetazone":{"_mzone":"Krasnoyarsk"}}],"Kuala_Lumpur":[{"usesMetazone":{"_mzone":"Malaya","_to":"1981-12-31 16:30"}},{"usesMetazone":{"_mzone":"Malaysia","_from":"1981-12-31 16:30"}}],"Kuching":[{"usesMetazone":{"_mzone":"Borneo","_to":"1981-12-31 16:00"}},{"usesMetazone":{"_mzone":"Malaysia","_from":"1981-12-31 16:00"}}],"Kuwait":[{"usesMetazone":{"_mzone":"Arabian"}}],"Macau":[{"usesMetazone":{"_mzone":"Macau","_to":"1999-12-19 16:00"}},{"usesMetazone":{"_mzone":"China","_from":"1999-12-19 16:00"}}],"Magadan":[{"usesMetazone":{"_mzone":"Magadan"}}],"Makassar":[{"usesMetazone":{"_mzone":"Indonesia_Central"}}],"Manila":[{"usesMetazone":{"_mzone":"Philippines"}}],"Muscat":[{"usesMetazone":{"_mzone":"Gulf"}}],"Nicosia":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Novokuznetsk":[{"usesMetazone":{"_mzone":"Krasnoyarsk","_to":"2010-03-27 19:00"}},{"usesMetazone":{"_mzone":"Novosibirsk","_from":"2010-03-27 19:00","_to":"2014-10-25 19:00"}},{"usesMetazone":{"_mzone":"Krasnoyarsk","_from":"2014-10-25 19:00"}}],"Novosibirsk":[{"usesMetazone":{"_mzone":"Novosibirsk"}}],"Omsk":[{"usesMetazone":{"_mzone":"Omsk"}}],"Oral":[{"usesMetazone":{"_mzone":"Uralsk","_to":"1991-12-15 20:00"}},{"usesMetazone":{"_mzone":"Oral","_from":"1991-12-15 20:00","_to":"2004-10-30 22:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Western","_from":"2004-10-30 22:00"}}],"Phnom_Penh":[{"usesMetazone":{"_mzone":"Indochina"}}],"Pontianak":[{"usesMetazone":{"_mzone":"Indonesia_Central","_to":"1987-12-31 16:00"}},{"usesMetazone":{"_mzone":"Indonesia_Western","_from":"1987-12-31 16:00"}}],"Pyongyang":[{"usesMetazone":{"_mzone":"Korea","_to":"2015-08-14 15:00"}},{"usesMetazone":{"_mzone":"Pyongyang","_from":"2015-08-14 15:00"}}],"Qatar":[{"usesMetazone":{"_mzone":"Gulf","_to":"1972-05-31 20:00"}},{"usesMetazone":{"_mzone":"Arabian","_from":"1972-05-31 20:00"}}],"Qyzylorda":[{"usesMetazone":{"_mzone":"Kizilorda","_to":"1991-12-15 19:00"}},{"usesMetazone":{"_mzone":"Qyzylorda","_from":"1991-12-15 19:00","_to":"2004-10-30 21:00"}},{"usesMetazone":{"_mzone":"Kazakhstan_Eastern","_from":"2004-10-30 21:00"}}],"Rangoon":[{"usesMetazone":{"_mzone":"Myanmar"}}],"Riyadh":[{"usesMetazone":{"_mzone":"Arabian"}}],"Saigon":[{"usesMetazone":{"_mzone":"Indochina","_from":"1975-06-12 16:00"}}],"Sakhalin":[{"usesMetazone":{"_mzone":"Sakhalin"}}],"Samarkand":[{"usesMetazone":{"_mzone":"Samarkand","_to":"1981-09-30 18:00"}},{"usesMetazone":{"_mzone":"Tashkent","_from":"1981-09-30 18:00","_to":"1982-03-31 18:00"}},{"usesMetazone":{"_mzone":"Samarkand","_from":"1982-03-31 18:00","_to":"1991-08-31 18:00"}},{"usesMetazone":{"_mzone":"Uzbekistan","_from":"1991-08-31 18:00"}}],"Seoul":[{"usesMetazone":{"_mzone":"Korea"}}],"Shanghai":[{"usesMetazone":{"_mzone":"China"}}],"Singapore":[{"usesMetazone":{"_mzone":"Singapore"}}],"Srednekolymsk":[{"usesMetazone":{"_mzone":"Magadan","_to":"2014-10-25 14:00"}}],"Taipei":[{"usesMetazone":{"_mzone":"Taipei"}}],"Tashkent":[{"usesMetazone":{"_mzone":"Tashkent","_to":"1991-08-31 18:00"}},{"usesMetazone":{"_mzone":"Uzbekistan","_from":"1991-08-31 18:00"}}],"Tbilisi":[{"usesMetazone":{"_mzone":"Tbilisi","_to":"1991-04-08 20:00"}},{"usesMetazone":{"_mzone":"Georgia","_from":"1991-04-08 20:00"}}],"Tehran":[{"usesMetazone":{"_mzone":"Iran"}}],"Thimphu":[{"usesMetazone":{"_mzone":"India","_to":"1987-09-30 18:30"}},{"usesMetazone":{"_mzone":"Bhutan","_from":"1987-09-30 18:30"}}],"Tokyo":[{"usesMetazone":{"_mzone":"Japan"}}],"Ulaanbaatar":[{"usesMetazone":{"_mzone":"Mongolia"}}],"Urumqi":[{"usesMetazone":{"_mzone":"Urumqi"}}],"Ust-Nera":[{"usesMetazone":{"_mzone":"Yakutsk","_to":"1981-03-31 15:00"}},{"usesMetazone":{"_mzone":"Magadan","_from":"1981-03-31 15:00","_to":"2011-09-12 12:00"}},{"usesMetazone":{"_mzone":"Vladivostok","_from":"2011-09-12 12:00"}}],"Vientiane":[{"usesMetazone":{"_mzone":"Indochina"}}],"Vladivostok":[{"usesMetazone":{"_mzone":"Vladivostok"}}],"Yakutsk":[{"usesMetazone":{"_mzone":"Yakutsk"}}],"Yekaterinburg":[{"usesMetazone":{"_mzone":"Sverdlovsk","_to":"1992-01-18 22:00"}},{"usesMetazone":{"_mzone":"Yekaterinburg","_from":"1992-01-18 22:00"}}],"Yerevan":[{"usesMetazone":{"_mzone":"Yerevan","_to":"1991-09-22 20:00"}},{"usesMetazone":{"_mzone":"Armenia","_from":"1991-09-22 20:00"}}]},"Atlantic":{"Azores":[{"usesMetazone":{"_mzone":"Azores","_to":"1992-09-27 02:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1992-09-27 02:00","_to":"1993-03-28 01:00"}},{"usesMetazone":{"_mzone":"Azores","_from":"1993-03-28 01:00"}}],"Bermuda":[{"usesMetazone":{"_mzone":"Atlantic"}}],"Canary":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Cape_Verde":[{"usesMetazone":{"_mzone":"Cape_Verde"}}],"Faeroe":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Madeira":[{"usesMetazone":{"_mzone":"Europe_Western"}}],"Reykjavik":[{"usesMetazone":{"_mzone":"GMT"}}],"South_Georgia":[{"usesMetazone":{"_mzone":"South_Georgia"}}],"St_Helena":[{"usesMetazone":{"_mzone":"GMT"}}],"Stanley":[{"usesMetazone":{"_mzone":"Falkland"}}]},"Australia":{"Adelaide":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Brisbane":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Broken_Hill":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Currie":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Darwin":[{"usesMetazone":{"_mzone":"Australia_Central"}}],"Eucla":[{"usesMetazone":{"_mzone":"Australia_CentralWestern"}}],"Hobart":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Lindeman":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Lord_Howe":[{"usesMetazone":{"_mzone":"Australia_Eastern","_to":"1981-02-28 14:00"}},{"usesMetazone":{"_mzone":"Lord_Howe","_from":"1981-02-28 14:00"}}],"Melbourne":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}],"Perth":[{"usesMetazone":{"_mzone":"Australia_Western"}}],"Sydney":[{"usesMetazone":{"_mzone":"Australia_Eastern"}}]},"CST6CDT":[{"usesMetazone":{"_mzone":"America_Central"}}],"EST5EDT":[{"usesMetazone":{"_mzone":"America_Eastern"}}],"Etc":{"GMT":[{"usesMetazone":{"_mzone":"GMT"}}]},"Europe":{"Amsterdam":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Andorra":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Astrakhan":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00","_to":"2016-03-26 23:00"}}],"Athens":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Belgrade":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Berlin":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Bratislava":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Brussels":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Bucharest":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Budapest":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Busingen":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Chisinau":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-05-05 21:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-05-05 21:00"}}],"Copenhagen":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Dublin":[{"usesMetazone":{"_mzone":"Irish","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Gibraltar":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Guernsey":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Helsinki":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Isle_of_Man":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Istanbul":[{"usesMetazone":{"_mzone":"Europe_Eastern","_to":"1978-10-14 21:00"}},{"usesMetazone":{"_mzone":"Turkey","_from":"1978-10-14 21:00","_to":"1985-04-19 21:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1985-04-19 21:00","_to":"2016-09-06 21:00"}},{"usesMetazone":{"_mzone":"Turkey","_from":"2016-09-06 21:00"}}],"Jersey":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Kaliningrad":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00","_to":"2011-03-27 00:00"}},{"usesMetazone":{"_mzone":"Europe_Further_Eastern","_from":"2011-03-27 00:00","_to":"2014-10-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"2014-10-25 23:00"}}],"Kiev":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 22:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-06-30 22:00"}}],"Lisbon":[{"usesMetazone":{"_mzone":"Europe_Central","_to":"1976-09-26 00:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1976-09-26 00:00","_to":"1992-09-27 01:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1992-09-27 01:00","_to":"1996-03-31 01:00"}},{"usesMetazone":{"_mzone":"Europe_Western","_from":"1996-03-31 01:00"}}],"Ljubljana":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"London":[{"usesMetazone":{"_mzone":"British","_to":"1971-10-31 02:00"}},{"usesMetazone":{"_mzone":"GMT","_from":"1971-10-31 02:00"}}],"Luxembourg":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Madrid":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Malta":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Mariehamn":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Minsk":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"2011-03-27 00:00"}},{"usesMetazone":{"_mzone":"Europe_Further_Eastern","_from":"2011-03-27 00:00","_to":"2014-10-26 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"2014-10-26 22:00"}}],"Monaco":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Moscow":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"1992-01-19 00:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1992-01-19 00:00"}}],"Oslo":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Paris":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Podgorica":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Prague":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Riga":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00"}}],"Rome":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Samara":[{"usesMetazone":{"_mzone":"Kuybyshev","_to":"1989-03-25 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1989-03-25 22:00","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00","_to":"1991-09-29 00:00"}},{"usesMetazone":{"_mzone":"Samara","_from":"1991-09-29 00:00"}}],"San_Marino":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Sarajevo":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Saratov":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00","_to":"2016-12-03 23:00"}}],"Simferopol":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1990-06-30 23:00","_to":"1994-04-30 21:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1994-04-30 21:00","_to":"1997-03-30 01:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1997-03-30 01:00","_to":"2014-03-30 00:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"2014-03-30 00:00"}}],"Skopje":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Sofia":[{"usesMetazone":{"_mzone":"Europe_Eastern"}}],"Stockholm":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Tallinn":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00"}}],"Tirane":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Ulyanovsk":[{"usesMetazone":{"_mzone":"Moscow","_from":"1992-01-19 00:00","_to":"2016-03-26 23:00"}}],"Uzhgorod":[{"usesMetazone":{"_mzone":"Moscow","_to":"1990-06-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1990-06-30 23:00","_to":"1991-03-31 02:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-31 02:00"}}],"Vaduz":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vatican":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vienna":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Vilnius":[{"usesMetazone":{"_mzone":"Moscow","_to":"1989-03-25 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1989-03-25 23:00","_to":"1998-03-29 01:00"}},{"usesMetazone":{"_mzone":"Europe_Central","_from":"1998-03-29 01:00","_to":"1999-10-31 01:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1999-10-31 01:00"}}],"Volgograd":[{"usesMetazone":{"_mzone":"Volgograd","_to":"1992-03-28 22:00"}},{"usesMetazone":{"_mzone":"Moscow","_from":"1992-03-28 22:00"}}],"Warsaw":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Zagreb":[{"usesMetazone":{"_mzone":"Europe_Central"}}],"Zaporozhye":[{"usesMetazone":{"_mzone":"Moscow","_to":"1991-03-30 23:00"}},{"usesMetazone":{"_mzone":"Europe_Eastern","_from":"1991-03-30 23:00"}}],"Zurich":[{"usesMetazone":{"_mzone":"Europe_Central"}}]},"Indian":{"Antananarivo":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Chagos":[{"usesMetazone":{"_mzone":"Indian_Ocean"}}],"Christmas":[{"usesMetazone":{"_mzone":"Christmas"}}],"Cocos":[{"usesMetazone":{"_mzone":"Cocos"}}],"Comoro":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Kerguelen":[{"usesMetazone":{"_mzone":"French_Southern"}}],"Mahe":[{"usesMetazone":{"_mzone":"Seychelles"}}],"Maldives":[{"usesMetazone":{"_mzone":"Maldives"}}],"Mauritius":[{"usesMetazone":{"_mzone":"Mauritius"}}],"Mayotte":[{"usesMetazone":{"_mzone":"Africa_Eastern"}}],"Reunion":[{"usesMetazone":{"_mzone":"Reunion"}}]},"MST7MDT":[{"usesMetazone":{"_mzone":"America_Mountain"}}],"Pacific":{"Apia":[{"usesMetazone":{"_mzone":"Apia"}}],"Auckland":[{"usesMetazone":{"_mzone":"New_Zealand"}}],"Bougainville":[{"usesMetazone":{"_mzone":"Papua_New_Guinea","_to":"2014-12-27 16:00"}}],"Chatham":[{"usesMetazone":{"_mzone":"Chatham"}}],"Easter":[{"usesMetazone":{"_mzone":"Easter"}}],"Efate":[{"usesMetazone":{"_mzone":"Vanuatu"}}],"Enderbury":[{"usesMetazone":{"_mzone":"Phoenix_Islands"}}],"Fakaofo":[{"usesMetazone":{"_mzone":"Tokelau"}}],"Fiji":[{"usesMetazone":{"_mzone":"Fiji"}}],"Funafuti":[{"usesMetazone":{"_mzone":"Tuvalu"}}],"Galapagos":[{"usesMetazone":{"_mzone":"Ecuador","_to":"1986-01-01 05:00"}},{"usesMetazone":{"_mzone":"Galapagos","_from":"1986-01-01 05:00"}}],"Gambier":[{"usesMetazone":{"_mzone":"Gambier"}}],"Guadalcanal":[{"usesMetazone":{"_mzone":"Solomon"}}],"Guam":[{"usesMetazone":{"_mzone":"Guam","_to":"2000-12-22 14:00"}},{"usesMetazone":{"_mzone":"Chamorro","_from":"2000-12-22 14:00"}}],"Honolulu":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-10-30 11:00"}}],"Johnston":[{"usesMetazone":{"_mzone":"Alaska_Hawaii","_to":"1983-10-30 11:00"}},{"usesMetazone":{"_mzone":"Hawaii_Aleutian","_from":"1983-10-30 11:00"}}],"Kiritimati":[{"usesMetazone":{"_mzone":"Line_Islands"}}],"Kosrae":[{"usesMetazone":{"_mzone":"Kosrae"}}],"Kwajalein":[{"usesMetazone":{"_mzone":"Kwajalein","_to":"1993-08-20 12:00"}},{"usesMetazone":{"_mzone":"Marshall_Islands","_from":"1993-08-20 12:00"}}],"Majuro":[{"usesMetazone":{"_mzone":"Marshall_Islands"}}],"Marquesas":[{"usesMetazone":{"_mzone":"Marquesas"}}],"Midway":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Samoa","_from":"1983-10-30 12:00"}}],"Nauru":[{"usesMetazone":{"_mzone":"Nauru"}}],"Niue":[{"usesMetazone":{"_mzone":"Niue"}}],"Norfolk":[{"usesMetazone":{"_mzone":"Norfolk"}}],"Noumea":[{"usesMetazone":{"_mzone":"New_Caledonia"}}],"Pago_Pago":[{"usesMetazone":{"_mzone":"Bering","_to":"1983-10-30 12:00"}},{"usesMetazone":{"_mzone":"Samoa","_from":"1983-10-30 12:00"}}],"Palau":[{"usesMetazone":{"_mzone":"Palau"}}],"Pitcairn":[{"usesMetazone":{"_mzone":"Pitcairn"}}],"Ponape":[{"usesMetazone":{"_mzone":"Ponape"}}],"Port_Moresby":[{"usesMetazone":{"_mzone":"Papua_New_Guinea"}}],"Rarotonga":[{"usesMetazone":{"_mzone":"Cook"}}],"Saipan":[{"usesMetazone":{"_mzone":"North_Mariana","_to":"2000-12-22 14:00"}},{"usesMetazone":{"_mzone":"Chamorro","_from":"2000-12-22 14:00"}}],"Tahiti":[{"usesMetazone":{"_mzone":"Tahiti"}}],"Tarawa":[{"usesMetazone":{"_mzone":"Gilbert_Islands"}}],"Tongatapu":[{"usesMetazone":{"_mzone":"Tonga"}}],"Truk":[{"usesMetazone":{"_mzone":"Truk"}}],"Wake":[{"usesMetazone":{"_mzone":"Wake"}}],"Wallis":[{"usesMetazone":{"_mzone":"Wallis"}}]},"PST8PDT":[{"usesMetazone":{"_mzone":"America_Pacific"}}]}},"metazones":[{"mapZone":{"_other":"Acre","_type":"America/Rio_Branco","_territory":"001"}},{"mapZone":{"_other":"Afghanistan","_type":"Asia/Kabul","_territory":"001"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Maputo","_territory":"001"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Bujumbura","_territory":"BI"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Gaborone","_territory":"BW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Lubumbashi","_territory":"CD"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Blantyre","_territory":"MW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Kigali","_territory":"RW"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Lusaka","_territory":"ZM"}},{"mapZone":{"_other":"Africa_Central","_type":"Africa/Harare","_territory":"ZW"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Nairobi","_territory":"001"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Djibouti","_territory":"DJ"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Asmera","_territory":"ER"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Addis_Ababa","_territory":"ET"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Comoro","_territory":"KM"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Antananarivo","_territory":"MG"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Mogadishu","_territory":"SO"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Dar_es_Salaam","_territory":"TZ"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Africa/Kampala","_territory":"UG"}},{"mapZone":{"_other":"Africa_Eastern","_type":"Indian/Mayotte","_territory":"YT"}},{"mapZone":{"_other":"Africa_FarWestern","_type":"Africa/El_Aaiun","_territory":"001"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Johannesburg","_territory":"001"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Maseru","_territory":"LS"}},{"mapZone":{"_other":"Africa_Southern","_type":"Africa/Mbabane","_territory":"SZ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Lagos","_territory":"001"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Luanda","_territory":"AO"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Porto-Novo","_territory":"BJ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Kinshasa","_territory":"CD"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Bangui","_territory":"CF"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Brazzaville","_territory":"CG"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Douala","_territory":"CM"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Libreville","_territory":"GA"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Malabo","_territory":"GQ"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Niamey","_territory":"NE"}},{"mapZone":{"_other":"Africa_Western","_type":"Africa/Ndjamena","_territory":"TD"}},{"mapZone":{"_other":"Aktyubinsk","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Alaska","_type":"America/Juneau","_territory":"001"}},{"mapZone":{"_other":"Alaska_Hawaii","_type":"America/Anchorage","_territory":"001"}},{"mapZone":{"_other":"Almaty","_type":"Asia/Almaty","_territory":"001"}},{"mapZone":{"_other":"Amazon","_type":"America/Manaus","_territory":"001"}},{"mapZone":{"_other":"America_Central","_type":"America/Chicago","_territory":"001"}},{"mapZone":{"_other":"America_Central","_type":"America/Belize","_territory":"BZ"}},{"mapZone":{"_other":"America_Central","_type":"America/Winnipeg","_territory":"CA"}},{"mapZone":{"_other":"America_Central","_type":"America/Costa_Rica","_territory":"CR"}},{"mapZone":{"_other":"America_Central","_type":"America/Guatemala","_territory":"GT"}},{"mapZone":{"_other":"America_Central","_type":"America/Tegucigalpa","_territory":"HN"}},{"mapZone":{"_other":"America_Central","_type":"America/Mexico_City","_territory":"MX"}},{"mapZone":{"_other":"America_Central","_type":"America/El_Salvador","_territory":"SV"}},{"mapZone":{"_other":"America_Eastern","_type":"America/New_York","_territory":"001"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Nassau","_territory":"BS"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Toronto","_territory":"CA"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Port-au-Prince","_territory":"HT"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Jamaica","_territory":"JM"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Cayman","_territory":"KY"}},{"mapZone":{"_other":"America_Eastern","_type":"America/Panama","_territory":"PA"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Denver","_territory":"001"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Edmonton","_territory":"CA"}},{"mapZone":{"_other":"America_Mountain","_type":"America/Hermosillo","_territory":"MX"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Los_Angeles","_territory":"001"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Vancouver","_territory":"CA"}},{"mapZone":{"_other":"America_Pacific","_type":"America/Tijuana","_territory":"MX"}},{"mapZone":{"_other":"Anadyr","_type":"Asia/Anadyr","_territory":"001"}},{"mapZone":{"_other":"Apia","_type":"Pacific/Apia","_territory":"001"}},{"mapZone":{"_other":"Aqtau","_type":"Asia/Aqtau","_territory":"001"}},{"mapZone":{"_other":"Aqtobe","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Riyadh","_territory":"001"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Bahrain","_territory":"BH"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Baghdad","_territory":"IQ"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Kuwait","_territory":"KW"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Qatar","_territory":"QA"}},{"mapZone":{"_other":"Arabian","_type":"Asia/Aden","_territory":"YE"}},{"mapZone":{"_other":"Argentina","_type":"America/Buenos_Aires","_territory":"001"}},{"mapZone":{"_other":"Argentina_Western","_type":"America/Argentina/San_Luis","_territory":"001"}},{"mapZone":{"_other":"Armenia","_type":"Asia/Yerevan","_territory":"001"}},{"mapZone":{"_other":"Ashkhabad","_type":"Asia/Ashgabat","_territory":"001"}},{"mapZone":{"_other":"Atlantic","_type":"America/Halifax","_territory":"001"}},{"mapZone":{"_other":"Atlantic","_type":"America/Antigua","_territory":"AG"}},{"mapZone":{"_other":"Atlantic","_type":"America/Anguilla","_territory":"AI"}},{"mapZone":{"_other":"Atlantic","_type":"America/Curacao","_territory":"AN"}},{"mapZone":{"_other":"Atlantic","_type":"America/Aruba","_territory":"AW"}},{"mapZone":{"_other":"Atlantic","_type":"America/Barbados","_territory":"BB"}},{"mapZone":{"_other":"Atlantic","_type":"Atlantic/Bermuda","_territory":"BM"}},{"mapZone":{"_other":"Atlantic","_type":"America/Kralendijk","_territory":"BQ"}},{"mapZone":{"_other":"Atlantic","_type":"America/Dominica","_territory":"DM"}},{"mapZone":{"_other":"Atlantic","_type":"America/Grenada","_territory":"GD"}},{"mapZone":{"_other":"Atlantic","_type":"America/Thule","_territory":"GL"}},{"mapZone":{"_other":"Atlantic","_type":"America/Guadeloupe","_territory":"GP"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Kitts","_territory":"KN"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Lucia","_territory":"LC"}},{"mapZone":{"_other":"Atlantic","_type":"America/Marigot","_territory":"MF"}},{"mapZone":{"_other":"Atlantic","_type":"America/Martinique","_territory":"MQ"}},{"mapZone":{"_other":"Atlantic","_type":"America/Montserrat","_territory":"MS"}},{"mapZone":{"_other":"Atlantic","_type":"America/Puerto_Rico","_territory":"PR"}},{"mapZone":{"_other":"Atlantic","_type":"America/Lower_Princes","_territory":"SX"}},{"mapZone":{"_other":"Atlantic","_type":"America/Port_of_Spain","_territory":"TT"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Vincent","_territory":"VC"}},{"mapZone":{"_other":"Atlantic","_type":"America/Tortola","_territory":"VG"}},{"mapZone":{"_other":"Atlantic","_type":"America/St_Thomas","_territory":"VI"}},{"mapZone":{"_other":"Australia_Central","_type":"Australia/Adelaide","_territory":"001"}},{"mapZone":{"_other":"Australia_CentralWestern","_type":"Australia/Eucla","_territory":"001"}},{"mapZone":{"_other":"Australia_Eastern","_type":"Australia/Sydney","_territory":"001"}},{"mapZone":{"_other":"Australia_Western","_type":"Australia/Perth","_territory":"001"}},{"mapZone":{"_other":"Azerbaijan","_type":"Asia/Baku","_territory":"001"}},{"mapZone":{"_other":"Azores","_type":"Atlantic/Azores","_territory":"001"}},{"mapZone":{"_other":"Baku","_type":"Asia/Baku","_territory":"001"}},{"mapZone":{"_other":"Bangladesh","_type":"Asia/Dhaka","_territory":"001"}},{"mapZone":{"_other":"Bering","_type":"America/Adak","_territory":"001"}},{"mapZone":{"_other":"Bhutan","_type":"Asia/Thimphu","_territory":"001"}},{"mapZone":{"_other":"Bolivia","_type":"America/La_Paz","_territory":"001"}},{"mapZone":{"_other":"Borneo","_type":"Asia/Kuching","_territory":"001"}},{"mapZone":{"_other":"Brasilia","_type":"America/Sao_Paulo","_territory":"001"}},{"mapZone":{"_other":"British","_type":"Europe/London","_territory":"001"}},{"mapZone":{"_other":"Brunei","_type":"Asia/Brunei","_territory":"001"}},{"mapZone":{"_other":"Cape_Verde","_type":"Atlantic/Cape_Verde","_territory":"001"}},{"mapZone":{"_other":"Casey","_type":"Antarctica/Casey","_territory":"001"}},{"mapZone":{"_other":"Chamorro","_type":"Pacific/Saipan","_territory":"001"}},{"mapZone":{"_other":"Chamorro","_type":"Pacific/Guam","_territory":"GU"}},{"mapZone":{"_other":"Chatham","_type":"Pacific/Chatham","_territory":"001"}},{"mapZone":{"_other":"Chile","_type":"America/Santiago","_territory":"001"}},{"mapZone":{"_other":"China","_type":"Asia/Shanghai","_territory":"001"}},{"mapZone":{"_other":"Choibalsan","_type":"Asia/Choibalsan","_territory":"001"}},{"mapZone":{"_other":"Christmas","_type":"Indian/Christmas","_territory":"001"}},{"mapZone":{"_other":"Cocos","_type":"Indian/Cocos","_territory":"001"}},{"mapZone":{"_other":"Colombia","_type":"America/Bogota","_territory":"001"}},{"mapZone":{"_other":"Cook","_type":"Pacific/Rarotonga","_territory":"001"}},{"mapZone":{"_other":"Cuba","_type":"America/Havana","_territory":"001"}},{"mapZone":{"_other":"Dacca","_type":"Asia/Dhaka","_territory":"001"}},{"mapZone":{"_other":"Davis","_type":"Antarctica/Davis","_territory":"001"}},{"mapZone":{"_other":"Dominican","_type":"America/Santo_Domingo","_territory":"001"}},{"mapZone":{"_other":"DumontDUrville","_type":"Antarctica/DumontDUrville","_territory":"001"}},{"mapZone":{"_other":"Dushanbe","_type":"Asia/Dushanbe","_territory":"001"}},{"mapZone":{"_other":"Dutch_Guiana","_type":"America/Paramaribo","_territory":"001"}},{"mapZone":{"_other":"East_Timor","_type":"Asia/Dili","_territory":"001"}},{"mapZone":{"_other":"Easter","_type":"Pacific/Easter","_territory":"001"}},{"mapZone":{"_other":"Ecuador","_type":"America/Guayaquil","_territory":"001"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Paris","_territory":"001"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Andorra","_territory":"AD"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Tirane","_territory":"AL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vienna","_territory":"AT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Sarajevo","_territory":"BA"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Brussels","_territory":"BE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Zurich","_territory":"CH"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Prague","_territory":"CZ"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Berlin","_territory":"DE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Copenhagen","_territory":"DK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Madrid","_territory":"ES"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Gibraltar","_territory":"GI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Zagreb","_territory":"HR"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Budapest","_territory":"HU"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Rome","_territory":"IT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vaduz","_territory":"LI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Luxembourg","_territory":"LU"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Monaco","_territory":"MC"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Podgorica","_territory":"ME"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Skopje","_territory":"MK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Malta","_territory":"MT"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Amsterdam","_territory":"NL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Oslo","_territory":"NO"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Warsaw","_territory":"PL"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Belgrade","_territory":"RS"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Stockholm","_territory":"SE"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Ljubljana","_territory":"SI"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Bratislava","_territory":"SK"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/San_Marino","_territory":"SM"}},{"mapZone":{"_other":"Europe_Central","_type":"Africa/Tunis","_territory":"TN"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Vatican","_territory":"VA"}},{"mapZone":{"_other":"Europe_Central","_type":"Europe/Belgrade","_territory":"XK"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Bucharest","_territory":"001"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Mariehamn","_territory":"AX"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Sofia","_territory":"BG"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Nicosia","_territory":"CY"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Africa/Cairo","_territory":"EG"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Helsinki","_territory":"FI"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Europe/Athens","_territory":"GR"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Amman","_territory":"JO"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Beirut","_territory":"LB"}},{"mapZone":{"_other":"Europe_Eastern","_type":"Asia/Damascus","_territory":"SY"}},{"mapZone":{"_other":"Europe_Further_Eastern","_type":"Europe/Minsk","_territory":"001"}},{"mapZone":{"_other":"Europe_Further_Eastern","_type":"Europe/Kaliningrad","_territory":"RU"}},{"mapZone":{"_other":"Europe_Western","_type":"Atlantic/Canary","_territory":"001"}},{"mapZone":{"_other":"Europe_Western","_type":"Atlantic/Faeroe","_territory":"FO"}},{"mapZone":{"_other":"Falkland","_type":"Atlantic/Stanley","_territory":"001"}},{"mapZone":{"_other":"Fiji","_type":"Pacific/Fiji","_territory":"001"}},{"mapZone":{"_other":"French_Guiana","_type":"America/Cayenne","_territory":"001"}},{"mapZone":{"_other":"French_Southern","_type":"Indian/Kerguelen","_territory":"001"}},{"mapZone":{"_other":"Frunze","_type":"Asia/Bishkek","_territory":"001"}},{"mapZone":{"_other":"Galapagos","_type":"Pacific/Galapagos","_territory":"001"}},{"mapZone":{"_other":"Gambier","_type":"Pacific/Gambier","_territory":"001"}},{"mapZone":{"_other":"Georgia","_type":"Asia/Tbilisi","_territory":"001"}},{"mapZone":{"_other":"Gilbert_Islands","_type":"Pacific/Tarawa","_territory":"001"}},{"mapZone":{"_other":"GMT","_type":"Atlantic/Reykjavik","_territory":"001"}},{"mapZone":{"_other":"GMT","_type":"Africa/Ouagadougou","_territory":"BF"}},{"mapZone":{"_other":"GMT","_type":"Africa/Abidjan","_territory":"CI"}},{"mapZone":{"_other":"GMT","_type":"Europe/London","_territory":"GB"}},{"mapZone":{"_other":"GMT","_type":"Africa/Accra","_territory":"GH"}},{"mapZone":{"_other":"GMT","_type":"Africa/Banjul","_territory":"GM"}},{"mapZone":{"_other":"GMT","_type":"Africa/Conakry","_territory":"GN"}},{"mapZone":{"_other":"GMT","_type":"Europe/Dublin","_territory":"IE"}},{"mapZone":{"_other":"GMT","_type":"Africa/Bamako","_territory":"ML"}},{"mapZone":{"_other":"GMT","_type":"Africa/Nouakchott","_territory":"MR"}},{"mapZone":{"_other":"GMT","_type":"Atlantic/St_Helena","_territory":"SH"}},{"mapZone":{"_other":"GMT","_type":"Africa/Freetown","_territory":"SL"}},{"mapZone":{"_other":"GMT","_type":"Africa/Dakar","_territory":"SN"}},{"mapZone":{"_other":"GMT","_type":"Africa/Sao_Tome","_territory":"ST"}},{"mapZone":{"_other":"GMT","_type":"Africa/Lome","_territory":"TG"}},{"mapZone":{"_other":"Goose_Bay","_type":"America/Goose_Bay","_territory":"001"}},{"mapZone":{"_other":"Greenland_Central","_type":"America/Scoresbysund","_territory":"001"}},{"mapZone":{"_other":"Greenland_Eastern","_type":"America/Scoresbysund","_territory":"001"}},{"mapZone":{"_other":"Greenland_Western","_type":"America/Godthab","_territory":"001"}},{"mapZone":{"_other":"Guam","_type":"Pacific/Guam","_territory":"001"}},{"mapZone":{"_other":"Gulf","_type":"Asia/Dubai","_territory":"001"}},{"mapZone":{"_other":"Gulf","_type":"Asia/Muscat","_territory":"OM"}},{"mapZone":{"_other":"Guyana","_type":"America/Guyana","_territory":"001"}},{"mapZone":{"_other":"Hawaii_Aleutian","_type":"Pacific/Honolulu","_territory":"001"}},{"mapZone":{"_other":"Hong_Kong","_type":"Asia/Hong_Kong","_territory":"001"}},{"mapZone":{"_other":"Hovd","_type":"Asia/Hovd","_territory":"001"}},{"mapZone":{"_other":"India","_type":"Asia/Calcutta","_territory":"001"}},{"mapZone":{"_other":"India","_type":"Asia/Colombo","_territory":"LK"}},{"mapZone":{"_other":"Indian_Ocean","_type":"Indian/Chagos","_territory":"001"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Bangkok","_territory":"001"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Phnom_Penh","_territory":"KH"}},{"mapZone":{"_other":"Indochina","_type":"Asia/Vientiane","_territory":"LA"}},{"mapZone":{"_other":"Indonesia_Central","_type":"Asia/Makassar","_territory":"001"}},{"mapZone":{"_other":"Indonesia_Eastern","_type":"Asia/Jayapura","_territory":"001"}},{"mapZone":{"_other":"Indonesia_Western","_type":"Asia/Jakarta","_territory":"001"}},{"mapZone":{"_other":"Iran","_type":"Asia/Tehran","_territory":"001"}},{"mapZone":{"_other":"Irish","_type":"Europe/Dublin","_territory":"001"}},{"mapZone":{"_other":"Irkutsk","_type":"Asia/Irkutsk","_territory":"001"}},{"mapZone":{"_other":"Israel","_type":"Asia/Jerusalem","_territory":"001"}},{"mapZone":{"_other":"Japan","_type":"Asia/Tokyo","_territory":"001"}},{"mapZone":{"_other":"Kamchatka","_type":"Asia/Kamchatka","_territory":"001"}},{"mapZone":{"_other":"Karachi","_type":"Asia/Karachi","_territory":"001"}},{"mapZone":{"_other":"Kazakhstan_Eastern","_type":"Asia/Almaty","_territory":"001"}},{"mapZone":{"_other":"Kazakhstan_Western","_type":"Asia/Aqtobe","_territory":"001"}},{"mapZone":{"_other":"Kizilorda","_type":"Asia/Qyzylorda","_territory":"001"}},{"mapZone":{"_other":"Korea","_type":"Asia/Seoul","_territory":"001"}},{"mapZone":{"_other":"Kosrae","_type":"Pacific/Kosrae","_territory":"001"}},{"mapZone":{"_other":"Krasnoyarsk","_type":"Asia/Krasnoyarsk","_territory":"001"}},{"mapZone":{"_other":"Kuybyshev","_type":"Europe/Samara","_territory":"001"}},{"mapZone":{"_other":"Kwajalein","_type":"Pacific/Kwajalein","_territory":"001"}},{"mapZone":{"_other":"Kyrgystan","_type":"Asia/Bishkek","_territory":"001"}},{"mapZone":{"_other":"Lanka","_type":"Asia/Colombo","_territory":"001"}},{"mapZone":{"_other":"Liberia","_type":"Africa/Monrovia","_territory":"001"}},{"mapZone":{"_other":"Line_Islands","_type":"Pacific/Kiritimati","_territory":"001"}},{"mapZone":{"_other":"Lord_Howe","_type":"Australia/Lord_Howe","_territory":"001"}},{"mapZone":{"_other":"Macau","_type":"Asia/Macau","_territory":"001"}},{"mapZone":{"_other":"Macquarie","_type":"Antarctica/Macquarie","_territory":"001"}},{"mapZone":{"_other":"Magadan","_type":"Asia/Magadan","_territory":"001"}},{"mapZone":{"_other":"Malaya","_type":"Asia/Kuala_Lumpur","_territory":"001"}},{"mapZone":{"_other":"Malaysia","_type":"Asia/Kuching","_territory":"001"}},{"mapZone":{"_other":"Maldives","_type":"Indian/Maldives","_territory":"001"}},{"mapZone":{"_other":"Marquesas","_type":"Pacific/Marquesas","_territory":"001"}},{"mapZone":{"_other":"Marshall_Islands","_type":"Pacific/Majuro","_territory":"001"}},{"mapZone":{"_other":"Mauritius","_type":"Indian/Mauritius","_territory":"001"}},{"mapZone":{"_other":"Mawson","_type":"Antarctica/Mawson","_territory":"001"}},{"mapZone":{"_other":"Mexico_Northwest","_type":"America/Santa_Isabel","_territory":"001"}},{"mapZone":{"_other":"Mexico_Pacific","_type":"America/Mazatlan","_territory":"001"}},{"mapZone":{"_other":"Mongolia","_type":"Asia/Ulaanbaatar","_territory":"001"}},{"mapZone":{"_other":"Moscow","_type":"Europe/Moscow","_territory":"001"}},{"mapZone":{"_other":"Myanmar","_type":"Asia/Rangoon","_territory":"001"}},{"mapZone":{"_other":"Nauru","_type":"Pacific/Nauru","_territory":"001"}},{"mapZone":{"_other":"Nepal","_type":"Asia/Katmandu","_territory":"001"}},{"mapZone":{"_other":"New_Caledonia","_type":"Pacific/Noumea","_territory":"001"}},{"mapZone":{"_other":"New_Zealand","_type":"Pacific/Auckland","_territory":"001"}},{"mapZone":{"_other":"New_Zealand","_type":"Antarctica/McMurdo","_territory":"AQ"}},{"mapZone":{"_other":"Newfoundland","_type":"America/St_Johns","_territory":"001"}},{"mapZone":{"_other":"Niue","_type":"Pacific/Niue","_territory":"001"}},{"mapZone":{"_other":"Norfolk","_type":"Pacific/Norfolk","_territory":"001"}},{"mapZone":{"_other":"Noronha","_type":"America/Noronha","_territory":"001"}},{"mapZone":{"_other":"North_Mariana","_type":"Pacific/Saipan","_territory":"001"}},{"mapZone":{"_other":"Novosibirsk","_type":"Asia/Novosibirsk","_territory":"001"}},{"mapZone":{"_other":"Omsk","_type":"Asia/Omsk","_territory":"001"}},{"mapZone":{"_other":"Oral","_type":"Asia/Oral","_territory":"001"}},{"mapZone":{"_other":"Pakistan","_type":"Asia/Karachi","_territory":"001"}},{"mapZone":{"_other":"Palau","_type":"Pacific/Palau","_territory":"001"}},{"mapZone":{"_other":"Papua_New_Guinea","_type":"Pacific/Port_Moresby","_territory":"001"}},{"mapZone":{"_other":"Paraguay","_type":"America/Asuncion","_territory":"001"}},{"mapZone":{"_other":"Peru","_type":"America/Lima","_territory":"001"}},{"mapZone":{"_other":"Philippines","_type":"Asia/Manila","_territory":"001"}},{"mapZone":{"_other":"Phoenix_Islands","_type":"Pacific/Enderbury","_territory":"001"}},{"mapZone":{"_other":"Pierre_Miquelon","_type":"America/Miquelon","_territory":"001"}},{"mapZone":{"_other":"Pitcairn","_type":"Pacific/Pitcairn","_territory":"001"}},{"mapZone":{"_other":"Ponape","_type":"Pacific/Ponape","_territory":"001"}},{"mapZone":{"_other":"Pyongyang","_type":"Asia/Pyongyang","_territory":"001"}},{"mapZone":{"_other":"Qyzylorda","_type":"Asia/Qyzylorda","_territory":"001"}},{"mapZone":{"_other":"Reunion","_type":"Indian/Reunion","_territory":"001"}},{"mapZone":{"_other":"Rothera","_type":"Antarctica/Rothera","_territory":"001"}},{"mapZone":{"_other":"Sakhalin","_type":"Asia/Sakhalin","_territory":"001"}},{"mapZone":{"_other":"Samara","_type":"Europe/Samara","_territory":"001"}},{"mapZone":{"_other":"Samarkand","_type":"Asia/Samarkand","_territory":"001"}},{"mapZone":{"_other":"Samoa","_type":"Pacific/Pago_Pago","_territory":"001"}},{"mapZone":{"_other":"Seychelles","_type":"Indian/Mahe","_territory":"001"}},{"mapZone":{"_other":"Shevchenko","_type":"Asia/Aqtau","_territory":"001"}},{"mapZone":{"_other":"Singapore","_type":"Asia/Singapore","_territory":"001"}},{"mapZone":{"_other":"Solomon","_type":"Pacific/Guadalcanal","_territory":"001"}},{"mapZone":{"_other":"South_Georgia","_type":"Atlantic/South_Georgia","_territory":"001"}},{"mapZone":{"_other":"Suriname","_type":"America/Paramaribo","_territory":"001"}},{"mapZone":{"_other":"Sverdlovsk","_type":"Asia/Yekaterinburg","_territory":"001"}},{"mapZone":{"_other":"Syowa","_type":"Antarctica/Syowa","_territory":"001"}},{"mapZone":{"_other":"Tahiti","_type":"Pacific/Tahiti","_territory":"001"}},{"mapZone":{"_other":"Taipei","_type":"Asia/Taipei","_territory":"001"}},{"mapZone":{"_other":"Tajikistan","_type":"Asia/Dushanbe","_territory":"001"}},{"mapZone":{"_other":"Tashkent","_type":"Asia/Tashkent","_territory":"001"}},{"mapZone":{"_other":"Tbilisi","_type":"Asia/Tbilisi","_territory":"001"}},{"mapZone":{"_other":"Tokelau","_type":"Pacific/Fakaofo","_territory":"001"}},{"mapZone":{"_other":"Tonga","_type":"Pacific/Tongatapu","_territory":"001"}},{"mapZone":{"_other":"Truk","_type":"Pacific/Truk","_territory":"001"}},{"mapZone":{"_other":"Turkey","_type":"Europe/Istanbul","_territory":"001"}},{"mapZone":{"_other":"Turkmenistan","_type":"Asia/Ashgabat","_territory":"001"}},{"mapZone":{"_other":"Tuvalu","_type":"Pacific/Funafuti","_territory":"001"}},{"mapZone":{"_other":"Uralsk","_type":"Asia/Oral","_territory":"001"}},{"mapZone":{"_other":"Uruguay","_type":"America/Montevideo","_territory":"001"}},{"mapZone":{"_other":"Urumqi","_type":"Asia/Urumqi","_territory":"001"}},{"mapZone":{"_other":"Uzbekistan","_type":"Asia/Tashkent","_territory":"001"}},{"mapZone":{"_other":"Vanuatu","_type":"Pacific/Efate","_territory":"001"}},{"mapZone":{"_other":"Venezuela","_type":"America/Caracas","_territory":"001"}},{"mapZone":{"_other":"Vladivostok","_type":"Asia/Vladivostok","_territory":"001"}},{"mapZone":{"_other":"Volgograd","_type":"Europe/Volgograd","_territory":"001"}},{"mapZone":{"_other":"Vostok","_type":"Antarctica/Vostok","_territory":"001"}},{"mapZone":{"_other":"Wake","_type":"Pacific/Wake","_territory":"001"}},{"mapZone":{"_other":"Wallis","_type":"Pacific/Wallis","_territory":"001"}},{"mapZone":{"_other":"Yakutsk","_type":"Asia/Yakutsk","_territory":"001"}},{"mapZone":{"_other":"Yekaterinburg","_type":"Asia/Yekaterinburg","_territory":"001"}},{"mapZone":{"_other":"Yerevan","_type":"Asia/Yerevan","_territory":"001"}},{"mapZone":{"_other":"Yukon","_type":"America/Yakutat","_territory":"001"}}]}}}; - -/***/ }), - -/***/ "./node_modules/cldr-data/supplemental/weekData.json": -/*!***********************************************************!*\ - !*** ./node_modules/cldr-data/supplemental/weekData.json ***! - \***********************************************************/ -/*! exports provided: supplemental, default */ -/***/ (function(module) { - -module.exports = {"supplemental":{"version":{"_number":"$Revision: 13744 $","_unicodeVersion":"10.0.0","_cldrVersion":"32"},"weekData":{"minDays":{"001":"1","AD":"4","AN":"4","AT":"4","AX":"4","BE":"4","BG":"4","CH":"4","CZ":"4","DE":"4","DK":"4","EE":"4","ES":"4","FI":"4","FJ":"4","FO":"4","FR":"4","GB":"4","GF":"4","GG":"4","GI":"4","GP":"4","GR":"4","GU":"1","HU":"4","IE":"4","IM":"4","IS":"4","IT":"4","JE":"4","LI":"4","LT":"4","LU":"4","MC":"4","MQ":"4","NL":"4","NO":"4","PL":"4","PT":"4","RE":"4","RU":"4","SE":"4","SJ":"4","SK":"4","SM":"4","UM":"1","US":"1","VA":"4","VI":"1"},"firstDay":{"001":"mon","AD":"mon","AE":"sat","AF":"sat","AG":"sun","AI":"mon","AL":"mon","AM":"mon","AN":"mon","AR":"sun","AS":"sun","AT":"mon","AU":"sun","AX":"mon","AZ":"mon","BA":"mon","BD":"fri","BE":"mon","BG":"mon","BH":"sat","BM":"mon","BN":"mon","BR":"sun","BS":"sun","BT":"sun","BW":"sun","BY":"mon","BZ":"sun","CA":"sun","CH":"mon","CL":"mon","CM":"mon","CN":"sun","CO":"sun","CR":"mon","CY":"mon","CZ":"mon","DE":"mon","DJ":"sat","DK":"mon","DM":"sun","DO":"sun","DZ":"sat","EC":"mon","EE":"mon","EG":"sat","ES":"mon","ET":"sun","FI":"mon","FJ":"mon","FO":"mon","FR":"mon","GB":"mon","GB-alt-variant":"sun","GE":"mon","GF":"mon","GP":"mon","GR":"mon","GT":"sun","GU":"sun","HK":"sun","HN":"sun","HR":"mon","HU":"mon","ID":"sun","IE":"sun","IL":"sun","IN":"sun","IQ":"sat","IR":"sat","IS":"mon","IT":"mon","JM":"sun","JO":"sat","JP":"sun","KE":"sun","KG":"mon","KH":"sun","KR":"sun","KW":"sat","KZ":"mon","LA":"sun","LB":"mon","LI":"mon","LK":"mon","LT":"mon","LU":"mon","LV":"mon","LY":"sat","MA":"sat","MC":"mon","MD":"mon","ME":"mon","MH":"sun","MK":"mon","MM":"sun","MN":"mon","MO":"sun","MQ":"mon","MT":"sun","MV":"fri","MX":"sun","MY":"mon","MZ":"sun","NI":"sun","NL":"mon","NO":"mon","NP":"sun","NZ":"mon","OM":"sat","PA":"sun","PE":"sun","PH":"sun","PK":"sun","PL":"mon","PR":"sun","PT":"mon","PY":"sun","QA":"sat","RE":"mon","RO":"mon","RS":"mon","RU":"mon","SA":"sun","SD":"sat","SE":"mon","SG":"sun","SI":"mon","SK":"mon","SM":"mon","SV":"sun","SY":"sat","TH":"sun","TJ":"mon","TM":"mon","TN":"sun","TR":"mon","TT":"sun","TW":"sun","UA":"mon","UM":"sun","US":"sun","UY":"mon","UZ":"mon","VA":"mon","VE":"sun","VI":"sun","VN":"mon","WS":"sun","XK":"mon","YE":"sun","ZA":"sun","ZW":"sun"},"weekendStart":{"001":"sat","AE":"fri","AF":"thu","BH":"fri","DZ":"fri","EG":"fri","IL":"fri","IN":"sun","IQ":"fri","IR":"fri","JO":"fri","KW":"fri","LY":"fri","MA":"fri","OM":"fri","QA":"fri","SA":"fri","SD":"fri","SY":"fri","TN":"fri","YE":"fri"},"weekendEnd":{"001":"sun","AE":"sat","AF":"fri","BH":"sat","DZ":"sat","EG":"sat","IL":"sat","IQ":"sat","IR":"fri","JO":"sat","KW":"sat","LY":"sat","MA":"sat","OM":"sat","QA":"sat","SA":"sat","SD":"sat","SY":"sat","TN":"sat","YE":"sat"},"af":{"_ordering":"weekOfDate weekOfInterval weekOfMonth"},"am az bs cs cy da el et hi ky lt mk sk ta th":{"_ordering":"weekOfYear weekOfMonth"},"ar fil gu hu hy id kk ko":{"_ordering":"weekOfMonth"},"be ro ru":{"_ordering":"weekOfInterval weekOfMonth"},"bg de iw pt ur zh":{"_ordering":"weekOfDate weekOfMonth weekOfInterval"},"ca es fr gl":{"_ordering":"weekOfDate"},"en bn ja ka":{"_ordering":"weekOfDate weekOfMonth"},"eu":{"_ordering":"weekOfMonth weekOfDate"},"fa hr it lv pl si sr uk uz":{"_ordering":"weekOfMonth weekOfInterval"},"fi zh-TW":{"_ordering":"weekOfYear weekOfDate weekOfMonth"},"is mn no sv vi":{"_ordering":"weekOfYear weekOfMonth weekOfInterval"},"km mr":{"_ordering":"weekOfMonth weekOfYear"},"kn ml pa":{"_ordering":"weekOfMonth weekOfDate weekOfYear"},"lo sq":{"_ordering":"weekOfMonth weekOfInterval weekOfDate weekOfYear"},"ms tr":{"_ordering":"weekOfMonth weekOfYear weekOfInterval weekOfDate"},"nl":{"_ordering":"weekOfDate weekOfYear weekOfMonth"},"sl":{"_ordering":"weekOfInterval"},"sw te":{"_ordering":"weekOfMonth weekOfInterval weekOfYear"},"und":{"_ordering":"weekOfYear"},"zu":{"_ordering":"weekOfYear weekOfInterval"}}}}; - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr.js": -/*!******************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr.js ***! - \******************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( root, factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : - __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}( this, function() { - - - var arrayIsArray = Array.isArray || function( obj ) { - return Object.prototype.toString.call( obj ) === "[object Array]"; - }; - - - - - var pathNormalize = function( path, attributes ) { - if ( arrayIsArray( path ) ) { - path = path.join( "/" ); - } - if ( typeof path !== "string" ) { - throw new Error( "invalid path \"" + path + "\"" ); - } - // 1: Ignore leading slash `/` - // 2: Ignore leading `cldr/` - path = path - .replace( /^\// , "" ) /* 1 */ - .replace( /^cldr\// , "" ); /* 2 */ - - // Replace {attribute}'s - path = path.replace( /{[a-zA-Z]+}/g, function( name ) { - name = name.replace( /^{([^}]*)}$/, "$1" ); - return attributes[ name ]; - }); - - return path.split( "/" ); - }; - - - - - var arraySome = function( array, callback ) { - var i, length; - if ( array.some ) { - return array.some( callback ); - } - for ( i = 0, length = array.length; i < length; i++ ) { - if ( callback( array[ i ], i, array ) ) { - return true; - } - } - return false; - }; - - - - - /** - * Return the maximized language id as defined in - * http://www.unicode.org/reports/tr35/#Likely_Subtags - * 1. Canonicalize. - * 1.1 Make sure the input locale is in canonical form: uses the right - * separator, and has the right casing. - * TODO Right casing? What df? It seems languages are lowercase, scripts are - * Capitalized, territory is uppercase. I am leaving this as an exercise to - * the user. - * - * 1.2 Replace any deprecated subtags with their canonical values using the - * data in supplemental metadata. Use the first value in the - * replacement list, if it exists. Language tag replacements may have multiple - * parts, such as "sh" ➞ "sr_Latn" or mo" ➞ "ro_MD". In such a case, the - * original script and/or region are retained if there is one. Thus - * "sh_Arab_AQ" ➞ "sr_Arab_AQ", not "sr_Latn_AQ". - * TODO What data? - * - * 1.3 If the tag is grandfathered (see in the supplemental data), then return it. - * TODO grandfathered? - * - * 1.4 Remove the script code 'Zzzz' and the region code 'ZZ' if they occur. - * 1.5 Get the components of the cleaned-up source tag (languages, scripts, - * and regions), plus any variants and extensions. - * 2. Lookup. Lookup each of the following in order, and stop on the first - * match: - * 2.1 languages_scripts_regions - * 2.2 languages_regions - * 2.3 languages_scripts - * 2.4 languages - * 2.5 und_scripts - * 3. Return - * 3.1 If there is no match, either return an error value, or the match for - * "und" (in APIs where a valid language tag is required). - * 3.2 Otherwise there is a match = languagem_scriptm_regionm - * 3.3 Let xr = xs if xs is not empty, and xm otherwise. - * 3.4 Return the language tag composed of languager _ scriptr _ regionr + - * variants + extensions. - * - * @subtags [Array] normalized language id subtags tuple (see init.js). - */ - var coreLikelySubtags = function( Cldr, cldr, subtags, options ) { - var match, matchFound, - language = subtags[ 0 ], - script = subtags[ 1 ], - sep = Cldr.localeSep, - territory = subtags[ 2 ], - variants = subtags.slice( 3, 4 ); - options = options || {}; - - // Skip if (language, script, territory) is not empty [3.3] - if ( language !== "und" && script !== "Zzzz" && territory !== "ZZ" ) { - return [ language, script, territory ].concat( variants ); - } - - // Skip if no supplemental likelySubtags data is present - if ( typeof cldr.get( "supplemental/likelySubtags" ) === "undefined" ) { - return; - } - - // [2] - matchFound = arraySome([ - [ language, script, territory ], - [ language, territory ], - [ language, script ], - [ language ], - [ "und", script ] - ], function( test ) { - return match = !(/\b(Zzzz|ZZ)\b/).test( test.join( sep ) ) /* [1.4] */ && cldr.get( [ "supplemental/likelySubtags", test.join( sep ) ] ); - }); - - // [3] - if ( matchFound ) { - // [3.2 .. 3.4] - match = match.split( sep ); - return [ - language !== "und" ? language : match[ 0 ], - script !== "Zzzz" ? script : match[ 1 ], - territory !== "ZZ" ? territory : match[ 2 ] - ].concat( variants ); - } else if ( options.force ) { - // [3.1.2] - return cldr.get( "supplemental/likelySubtags/und" ).split( sep ); - } else { - // [3.1.1] - return; - } - }; - - - - /** - * Given a locale, remove any fields that Add Likely Subtags would add. - * http://www.unicode.org/reports/tr35/#Likely_Subtags - * 1. First get max = AddLikelySubtags(inputLocale). If an error is signaled, - * return it. - * 2. Remove the variants from max. - * 3. Then for trial in {language, language _ region, language _ script}. If - * AddLikelySubtags(trial) = max, then return trial + variants. - * 4. If you do not get a match, return max + variants. - * - * @maxLanguageId [Array] maxLanguageId tuple (see init.js). - */ - var coreRemoveLikelySubtags = function( Cldr, cldr, maxLanguageId ) { - var match, matchFound, - language = maxLanguageId[ 0 ], - script = maxLanguageId[ 1 ], - territory = maxLanguageId[ 2 ], - variants = maxLanguageId[ 3 ]; - - // [3] - matchFound = arraySome([ - [ [ language, "Zzzz", "ZZ" ], [ language ] ], - [ [ language, "Zzzz", territory ], [ language, territory ] ], - [ [ language, script, "ZZ" ], [ language, script ] ] - ], function( test ) { - var result = coreLikelySubtags( Cldr, cldr, test[ 0 ] ); - match = test[ 1 ]; - return result && result[ 0 ] === maxLanguageId[ 0 ] && - result[ 1 ] === maxLanguageId[ 1 ] && - result[ 2 ] === maxLanguageId[ 2 ]; - }); - - if ( matchFound ) { - if ( variants ) { - match.push( variants ); - } - return match; - } - - // [4] - return maxLanguageId; - }; - - - - - /** - * subtags( locale ) - * - * @locale [String] - */ - var coreSubtags = function( locale ) { - var aux, unicodeLanguageId, - subtags = []; - - locale = locale.replace( /_/, "-" ); - - // Unicode locale extensions. - aux = locale.split( "-u-" ); - if ( aux[ 1 ] ) { - aux[ 1 ] = aux[ 1 ].split( "-t-" ); - locale = aux[ 0 ] + ( aux[ 1 ][ 1 ] ? "-t-" + aux[ 1 ][ 1 ] : ""); - subtags[ 4 /* unicodeLocaleExtensions */ ] = aux[ 1 ][ 0 ]; - } - - // TODO normalize transformed extensions. Currently, skipped. - // subtags[ x ] = locale.split( "-t-" )[ 1 ]; - unicodeLanguageId = locale.split( "-t-" )[ 0 ]; - - // unicode_language_id = "root" - // | unicode_language_subtag - // (sep unicode_script_subtag)? - // (sep unicode_region_subtag)? - // (sep unicode_variant_subtag)* ; - // - // Although unicode_language_subtag = alpha{2,8}, I'm using alpha{2,3}. Because, there's no language on CLDR lengthier than 3. - aux = unicodeLanguageId.match( /^(([a-z]{2,3})(-([A-Z][a-z]{3}))?(-([A-Z]{2}|[0-9]{3}))?)((-([a-zA-Z0-9]{5,8}|[0-9][a-zA-Z0-9]{3}))*)$|^(root)$/ ); - if ( aux === null ) { - return [ "und", "Zzzz", "ZZ" ]; - } - subtags[ 0 /* language */ ] = aux[ 10 ] /* root */ || aux[ 2 ] || "und"; - subtags[ 1 /* script */ ] = aux[ 4 ] || "Zzzz"; - subtags[ 2 /* territory */ ] = aux[ 6 ] || "ZZ"; - if ( aux[ 7 ] && aux[ 7 ].length ) { - subtags[ 3 /* variant */ ] = aux[ 7 ].slice( 1 ) /* remove leading "-" */; - } - - // 0: language - // 1: script - // 2: territory (aka region) - // 3: variant - // 4: unicodeLocaleExtensions - return subtags; - }; - - - - - var arrayForEach = function( array, callback ) { - var i, length; - if ( array.forEach ) { - return array.forEach( callback ); - } - for ( i = 0, length = array.length; i < length; i++ ) { - callback( array[ i ], i, array ); - } - }; - - - - - /** - * bundleLookup( minLanguageId ) - * - * @Cldr [Cldr class] - * - * @cldr [Cldr instance] - * - * @minLanguageId [String] requested languageId after applied remove likely subtags. - */ - var bundleLookup = function( Cldr, cldr, minLanguageId ) { - var availableBundleMap = Cldr._availableBundleMap, - availableBundleMapQueue = Cldr._availableBundleMapQueue; - - if ( availableBundleMapQueue.length ) { - arrayForEach( availableBundleMapQueue, function( bundle ) { - var existing, maxBundle, minBundle, subtags; - subtags = coreSubtags( bundle ); - maxBundle = coreLikelySubtags( Cldr, cldr, subtags ); - minBundle = coreRemoveLikelySubtags( Cldr, cldr, maxBundle ); - minBundle = minBundle.join( Cldr.localeSep ); - existing = availableBundleMapQueue[ minBundle ]; - if ( existing && existing.length < bundle.length ) { - return; - } - availableBundleMap[ minBundle ] = bundle; - }); - Cldr._availableBundleMapQueue = []; - } - - return availableBundleMap[ minLanguageId ] || null; - }; - - - - - var objectKeys = function( object ) { - var i, - result = []; - - if ( Object.keys ) { - return Object.keys( object ); - } - - for ( i in object ) { - result.push( i ); - } - - return result; - }; - - - - - var createError = function( code, attributes ) { - var error, message; - - message = code + ( attributes && JSON ? ": " + JSON.stringify( attributes ) : "" ); - error = new Error( message ); - error.code = code; - - // extend( error, attributes ); - arrayForEach( objectKeys( attributes ), function( attribute ) { - error[ attribute ] = attributes[ attribute ]; - }); - - return error; - }; - - - - - var validate = function( code, check, attributes ) { - if ( !check ) { - throw createError( code, attributes ); - } - }; - - - - - var validatePresence = function( value, name ) { - validate( "E_MISSING_PARAMETER", typeof value !== "undefined", { - name: name - }); - }; - - - - - var validateType = function( value, name, check, expected ) { - validate( "E_INVALID_PAR_TYPE", check, { - expected: expected, - name: name, - value: value - }); - }; - - - - - var validateTypePath = function( value, name ) { - validateType( value, name, typeof value === "string" || arrayIsArray( value ), "String or Array" ); - }; - - - - - /** - * Function inspired by jQuery Core, but reduced to our use case. - */ - var isPlainObject = function( obj ) { - return obj !== null && "" + obj === "[object Object]"; - }; - - - - - var validateTypePlainObject = function( value, name ) { - validateType( value, name, typeof value === "undefined" || isPlainObject( value ), "Plain Object" ); - }; - - - - - var validateTypeString = function( value, name ) { - validateType( value, name, typeof value === "string", "a string" ); - }; - - - - - // @path: normalized path - var resourceGet = function( data, path ) { - var i, - node = data, - length = path.length; - - for ( i = 0; i < length - 1; i++ ) { - node = node[ path[ i ] ]; - if ( !node ) { - return undefined; - } - } - return node[ path[ i ] ]; - }; - - - - - /** - * setAvailableBundles( Cldr, json ) - * - * @Cldr [Cldr class] - * - * @json resolved/unresolved cldr data. - * - * Set available bundles queue based on passed json CLDR data. Considers a bundle as any String at /main/{bundle}. - */ - var coreSetAvailableBundles = function( Cldr, json ) { - var bundle, - availableBundleMapQueue = Cldr._availableBundleMapQueue, - main = resourceGet( json, [ "main" ] ); - - if ( main ) { - for ( bundle in main ) { - if ( main.hasOwnProperty( bundle ) && bundle !== "root" && - availableBundleMapQueue.indexOf( bundle ) === -1 ) { - availableBundleMapQueue.push( bundle ); - } - } - } - }; - - - - var alwaysArray = function( somethingOrArray ) { - return arrayIsArray( somethingOrArray ) ? somethingOrArray : [ somethingOrArray ]; - }; - - - var jsonMerge = (function() { - - // Returns new deeply merged JSON. - // - // Eg. - // merge( { a: { b: 1, c: 2 } }, { a: { b: 3, d: 4 } } ) - // -> { a: { b: 3, c: 2, d: 4 } } - // - // @arguments JSON's - // - var merge = function() { - var destination = {}, - sources = [].slice.call( arguments, 0 ); - arrayForEach( sources, function( source ) { - var prop; - for ( prop in source ) { - if ( prop in destination && typeof destination[ prop ] === "object" && !arrayIsArray( destination[ prop ] ) ) { - - // Merge Objects - destination[ prop ] = merge( destination[ prop ], source[ prop ] ); - - } else { - - // Set new values - destination[ prop ] = source[ prop ]; - - } - } - }); - return destination; - }; - - return merge; - -}()); - - - /** - * load( Cldr, source, jsons ) - * - * @Cldr [Cldr class] - * - * @source [Object] - * - * @jsons [arguments] - */ - var coreLoad = function( Cldr, source, jsons ) { - var i, j, json; - - validatePresence( jsons[ 0 ], "json" ); - - // Support arbitrary parameters, e.g., `Cldr.load({...}, {...})`. - for ( i = 0; i < jsons.length; i++ ) { - - // Support array parameters, e.g., `Cldr.load([{...}, {...}])`. - json = alwaysArray( jsons[ i ] ); - - for ( j = 0; j < json.length; j++ ) { - validateTypePlainObject( json[ j ], "json" ); - source = jsonMerge( source, json[ j ] ); - coreSetAvailableBundles( Cldr, json[ j ] ); - } - } - - return source; - }; - - - - var itemGetResolved = function( Cldr, path, attributes ) { - // Resolve path - var normalizedPath = pathNormalize( path, attributes ); - - return resourceGet( Cldr._resolved, normalizedPath ); - }; - - - - - /** - * new Cldr() - */ - var Cldr = function( locale ) { - this.init( locale ); - }; - - // Build optimization hack to avoid duplicating functions across modules. - Cldr._alwaysArray = alwaysArray; - Cldr._coreLoad = coreLoad; - Cldr._createError = createError; - Cldr._itemGetResolved = itemGetResolved; - Cldr._jsonMerge = jsonMerge; - Cldr._pathNormalize = pathNormalize; - Cldr._resourceGet = resourceGet; - Cldr._validatePresence = validatePresence; - Cldr._validateType = validateType; - Cldr._validateTypePath = validateTypePath; - Cldr._validateTypePlainObject = validateTypePlainObject; - - Cldr._availableBundleMap = {}; - Cldr._availableBundleMapQueue = []; - Cldr._resolved = {}; - - // Allow user to override locale separator "-" (default) | "_". According to http://www.unicode.org/reports/tr35/#Unicode_language_identifier, both "-" and "_" are valid locale separators (eg. "en_GB", "en-GB"). According to http://unicode.org/cldr/trac/ticket/6786 its usage must be consistent throughout the data set. - Cldr.localeSep = "-"; - - /** - * Cldr.load( json [, json, ...] ) - * - * @json [JSON] CLDR data or [Array] Array of @json's. - * - * Load resolved cldr data. - */ - Cldr.load = function() { - Cldr._resolved = coreLoad( Cldr, Cldr._resolved, arguments ); - }; - - /** - * .init() automatically run on instantiation/construction. - */ - Cldr.prototype.init = function( locale ) { - var attributes, language, maxLanguageId, minLanguageId, script, subtags, territory, unicodeLocaleExtensions, variant, - sep = Cldr.localeSep, - unicodeLocaleExtensionsRaw = ""; - - validatePresence( locale, "locale" ); - validateTypeString( locale, "locale" ); - - subtags = coreSubtags( locale ); - - if ( subtags.length === 5 ) { - unicodeLocaleExtensions = subtags.pop(); - unicodeLocaleExtensionsRaw = sep + "u" + sep + unicodeLocaleExtensions; - // Remove trailing null when there is unicodeLocaleExtensions but no variants. - if ( !subtags[ 3 ] ) { - subtags.pop(); - } - } - variant = subtags[ 3 ]; - - // Normalize locale code. - // Get (or deduce) the "triple subtags": language, territory (also aliased as region), and script subtags. - // Get the variant subtags (calendar, collation, currency, etc). - // refs: - // - http://www.unicode.org/reports/tr35/#Field_Definitions - // - http://www.unicode.org/reports/tr35/#Language_and_Locale_IDs - // - http://www.unicode.org/reports/tr35/#Unicode_locale_identifier - - // When a locale id does not specify a language, or territory (region), or script, they are obtained by Likely Subtags. - maxLanguageId = coreLikelySubtags( Cldr, this, subtags, { force: true } ) || subtags; - language = maxLanguageId[ 0 ]; - script = maxLanguageId[ 1 ]; - territory = maxLanguageId[ 2 ]; - - minLanguageId = coreRemoveLikelySubtags( Cldr, this, maxLanguageId ).join( sep ); - - // Set attributes - this.attributes = attributes = { - bundle: bundleLookup( Cldr, this, minLanguageId ), - - // Unicode Language Id - minLanguageId: minLanguageId + unicodeLocaleExtensionsRaw, - maxLanguageId: maxLanguageId.join( sep ) + unicodeLocaleExtensionsRaw, - - // Unicode Language Id Subtabs - language: language, - script: script, - territory: territory, - region: territory, /* alias */ - variant: variant - }; - - // Unicode locale extensions. - unicodeLocaleExtensions && ( "-" + unicodeLocaleExtensions ).replace( /-[a-z]{3,8}|(-[a-z]{2})-([a-z]{3,8})/g, function( attribute, key, type ) { - - if ( key ) { - - // Extension is in the `keyword` form. - attributes[ "u" + key ] = type; - } else { - - // Extension is in the `attribute` form. - attributes[ "u" + attribute ] = true; - } - }); - - this.locale = locale; - }; - - /** - * .get() - */ - Cldr.prototype.get = function( path ) { - - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - return itemGetResolved( Cldr, path, this.attributes ); - }; - - /** - * .main() - */ - Cldr.prototype.main = function( path ) { - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - validate( "E_MISSING_BUNDLE", this.attributes.bundle !== null, { - locale: this.locale - }); - - path = alwaysArray( path ); - return this.get( [ "main/{bundle}" ].concat( path ) ); - }; - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/event.js": -/*!************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/event.js ***! - \************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var pathNormalize = Cldr._pathNormalize, - validatePresence = Cldr._validatePresence, - validateType = Cldr._validateType; - -/*! - * EventEmitter v4.2.7 - git.io/ee - * Oliver Caldwell - * MIT license - * @preserve - */ - -var EventEmitter; -/* jshint ignore:start */ -EventEmitter = (function () { - - - /** - * Class for managing events. - * Can be extended to provide event functionality in other classes. - * - * @class EventEmitter Manages event registering and emitting. - */ - function EventEmitter() {} - - // Shortcuts to improve speed and size - var proto = EventEmitter.prototype; - var exports = {}; - - - /** - * Finds the index of the listener for the event in it's storage array. - * - * @param {Function[]} listeners Array of listeners to search through. - * @param {Function} listener Method to look for. - * @return {Number} Index of the specified listener, -1 if not found - * @api private - */ - function indexOfListener(listeners, listener) { - var i = listeners.length; - while (i--) { - if (listeners[i].listener === listener) { - return i; - } - } - - return -1; - } - - /** - * Alias a method while keeping the context correct, to allow for overwriting of target method. - * - * @param {String} name The name of the target method. - * @return {Function} The aliased method - * @api private - */ - function alias(name) { - return function aliasClosure() { - return this[name].apply(this, arguments); - }; - } - - /** - * Returns the listener array for the specified event. - * Will initialise the event object and listener arrays if required. - * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them. - * Each property in the object response is an array of listener functions. - * - * @param {String|RegExp} evt Name of the event to return the listeners from. - * @return {Function[]|Object} All listener functions for the event. - */ - proto.getListeners = function getListeners(evt) { - var events = this._getEvents(); - var response; - var key; - - // Return a concatenated array of all matching events if - // the selector is a regular expression. - if (evt instanceof RegExp) { - response = {}; - for (key in events) { - if (events.hasOwnProperty(key) && evt.test(key)) { - response[key] = events[key]; - } - } - } - else { - response = events[evt] || (events[evt] = []); - } - - return response; - }; - - /** - * Takes a list of listener objects and flattens it into a list of listener functions. - * - * @param {Object[]} listeners Raw listener objects. - * @return {Function[]} Just the listener functions. - */ - proto.flattenListeners = function flattenListeners(listeners) { - var flatListeners = []; - var i; - - for (i = 0; i < listeners.length; i += 1) { - flatListeners.push(listeners[i].listener); - } - - return flatListeners; - }; - - /** - * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful. - * - * @param {String|RegExp} evt Name of the event to return the listeners from. - * @return {Object} All listener functions for an event in an object. - */ - proto.getListenersAsObject = function getListenersAsObject(evt) { - var listeners = this.getListeners(evt); - var response; - - if (listeners instanceof Array) { - response = {}; - response[evt] = listeners; - } - - return response || listeners; - }; - - /** - * Adds a listener function to the specified event. - * The listener will not be added if it is a duplicate. - * If the listener returns true then it will be removed after it is called. - * If you pass a regular expression as the event name then the listener will be added to all events that match it. - * - * @param {String|RegExp} evt Name of the event to attach the listener to. - * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addListener = function addListener(evt, listener) { - var listeners = this.getListenersAsObject(evt); - var listenerIsWrapped = typeof listener === 'object'; - var key; - - for (key in listeners) { - if (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) { - listeners[key].push(listenerIsWrapped ? listener : { - listener: listener, - once: false - }); - } - } - - return this; - }; - - /** - * Alias of addListener - */ - proto.on = alias('addListener'); - - /** - * Semi-alias of addListener. It will add a listener that will be - * automatically removed after it's first execution. - * - * @param {String|RegExp} evt Name of the event to attach the listener to. - * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addOnceListener = function addOnceListener(evt, listener) { - return this.addListener(evt, { - listener: listener, - once: true - }); - }; - - /** - * Alias of addOnceListener. - */ - proto.once = alias('addOnceListener'); - - /** - * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad. - * You need to tell it what event names should be matched by a regex. - * - * @param {String} evt Name of the event to create. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.defineEvent = function defineEvent(evt) { - this.getListeners(evt); - return this; - }; - - /** - * Uses defineEvent to define multiple events. - * - * @param {String[]} evts An array of event names to define. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.defineEvents = function defineEvents(evts) { - for (var i = 0; i < evts.length; i += 1) { - this.defineEvent(evts[i]); - } - return this; - }; - - /** - * Removes a listener function from the specified event. - * When passed a regular expression as the event name, it will remove the listener from all events that match it. - * - * @param {String|RegExp} evt Name of the event to remove the listener from. - * @param {Function} listener Method to remove from the event. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeListener = function removeListener(evt, listener) { - var listeners = this.getListenersAsObject(evt); - var index; - var key; - - for (key in listeners) { - if (listeners.hasOwnProperty(key)) { - index = indexOfListener(listeners[key], listener); - - if (index !== -1) { - listeners[key].splice(index, 1); - } - } - } - - return this; - }; - - /** - * Alias of removeListener - */ - proto.off = alias('removeListener'); - - /** - * Adds listeners in bulk using the manipulateListeners method. - * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added. - * You can also pass it a regular expression to add the array of listeners to all events that match it. - * Yeah, this function does quite a bit. That's probably a bad thing. - * - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to add. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.addListeners = function addListeners(evt, listeners) { - // Pass through to manipulateListeners - return this.manipulateListeners(false, evt, listeners); - }; - - /** - * Removes listeners in bulk using the manipulateListeners method. - * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. - * You can also pass it an event name and an array of listeners to be removed. - * You can also pass it a regular expression to remove the listeners from all events that match it. - * - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to remove. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeListeners = function removeListeners(evt, listeners) { - // Pass through to manipulateListeners - return this.manipulateListeners(true, evt, listeners); - }; - - /** - * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level. - * The first argument will determine if the listeners are removed (true) or added (false). - * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. - * You can also pass it an event name and an array of listeners to be added/removed. - * You can also pass it a regular expression to manipulate the listeners of all events that match it. - * - * @param {Boolean} remove True if you want to remove listeners, false if you want to add. - * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once. - * @param {Function[]} [listeners] An optional array of listener functions to add/remove. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) { - var i; - var value; - var single = remove ? this.removeListener : this.addListener; - var multiple = remove ? this.removeListeners : this.addListeners; - - // If evt is an object then pass each of it's properties to this method - if (typeof evt === 'object' && !(evt instanceof RegExp)) { - for (i in evt) { - if (evt.hasOwnProperty(i) && (value = evt[i])) { - // Pass the single listener straight through to the singular method - if (typeof value === 'function') { - single.call(this, i, value); - } - else { - // Otherwise pass back to the multiple function - multiple.call(this, i, value); - } - } - } - } - else { - // So evt must be a string - // And listeners must be an array of listeners - // Loop over it and pass each one to the multiple method - i = listeners.length; - while (i--) { - single.call(this, evt, listeners[i]); - } - } - - return this; - }; - - /** - * Removes all listeners from a specified event. - * If you do not specify an event then all listeners will be removed. - * That means every event will be emptied. - * You can also pass a regex to remove all events that match it. - * - * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.removeEvent = function removeEvent(evt) { - var type = typeof evt; - var events = this._getEvents(); - var key; - - // Remove different things depending on the state of evt - if (type === 'string') { - // Remove all listeners for the specified event - delete events[evt]; - } - else if (evt instanceof RegExp) { - // Remove all events matching the regex. - for (key in events) { - if (events.hasOwnProperty(key) && evt.test(key)) { - delete events[key]; - } - } - } - else { - // Remove all listeners in all events - delete this._events; - } - - return this; - }; - - /** - * Alias of removeEvent. - * - * Added to mirror the node API. - */ - proto.removeAllListeners = alias('removeEvent'); - - /** - * Emits an event of your choice. - * When emitted, every listener attached to that event will be executed. - * If you pass the optional argument array then those arguments will be passed to every listener upon execution. - * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately. - * So they will not arrive within the array on the other side, they will be separate. - * You can also pass a regular expression to emit to all events that match it. - * - * @param {String|RegExp} evt Name of the event to emit and execute listeners for. - * @param {Array} [args] Optional array of arguments to be passed to each listener. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.emitEvent = function emitEvent(evt, args) { - var listeners = this.getListenersAsObject(evt); - var listener; - var i; - var key; - var response; - - for (key in listeners) { - if (listeners.hasOwnProperty(key)) { - i = listeners[key].length; - - while (i--) { - // If the listener returns true then it shall be removed from the event - // The function is executed either with a basic call or an apply if there is an args array - listener = listeners[key][i]; - - if (listener.once === true) { - this.removeListener(evt, listener.listener); - } - - response = listener.listener.apply(this, args || []); - - if (response === this._getOnceReturnValue()) { - this.removeListener(evt, listener.listener); - } - } - } - } - - return this; - }; - - /** - * Alias of emitEvent - */ - proto.trigger = alias('emitEvent'); - - /** - * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on. - * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it. - * - * @param {String|RegExp} evt Name of the event to emit and execute listeners for. - * @param {...*} Optional additional arguments to be passed to each listener. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.emit = function emit(evt) { - var args = Array.prototype.slice.call(arguments, 1); - return this.emitEvent(evt, args); - }; - - /** - * Sets the current value to check against when executing listeners. If a - * listeners return value matches the one set here then it will be removed - * after execution. This value defaults to true. - * - * @param {*} value The new value to check for when executing listeners. - * @return {Object} Current instance of EventEmitter for chaining. - */ - proto.setOnceReturnValue = function setOnceReturnValue(value) { - this._onceReturnValue = value; - return this; - }; - - /** - * Fetches the current value to check against when executing listeners. If - * the listeners return value matches this one then it should be removed - * automatically. It will return true by default. - * - * @return {*|Boolean} The current value to check for or the default, true. - * @api private - */ - proto._getOnceReturnValue = function _getOnceReturnValue() { - if (this.hasOwnProperty('_onceReturnValue')) { - return this._onceReturnValue; - } - else { - return true; - } - }; - - /** - * Fetches the events object and creates one if required. - * - * @return {Object} The events storage object. - * @api private - */ - proto._getEvents = function _getEvents() { - return this._events || (this._events = {}); - }; - - /** - * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version. - * - * @return {Function} Non conflicting EventEmitter class. - */ - EventEmitter.noConflict = function noConflict() { - exports.EventEmitter = originalGlobalValue; - return EventEmitter; - }; - - return EventEmitter; -}()); -/* jshint ignore:end */ - - - - var validateTypeFunction = function( value, name ) { - validateType( value, name, typeof value === "undefined" || typeof value === "function", "Function" ); - }; - - - - - var superGet, superInit, - globalEe = new EventEmitter(); - - function validateTypeEvent( value, name ) { - validateType( value, name, typeof value === "string" || value instanceof RegExp, "String or RegExp" ); - } - - function validateThenCall( method, self ) { - return function( event, listener ) { - validatePresence( event, "event" ); - validateTypeEvent( event, "event" ); - - validatePresence( listener, "listener" ); - validateTypeFunction( listener, "listener" ); - - return self[ method ].apply( self, arguments ); - }; - } - - function off( self ) { - return validateThenCall( "off", self ); - } - - function on( self ) { - return validateThenCall( "on", self ); - } - - function once( self ) { - return validateThenCall( "once", self ); - } - - Cldr.off = off( globalEe ); - Cldr.on = on( globalEe ); - Cldr.once = once( globalEe ); - - /** - * Overload Cldr.prototype.init(). - */ - superInit = Cldr.prototype.init; - Cldr.prototype.init = function() { - var ee; - this.ee = ee = new EventEmitter(); - this.off = off( ee ); - this.on = on( ee ); - this.once = once( ee ); - superInit.apply( this, arguments ); - }; - - /** - * getOverload is encapsulated, because of cldr/unresolved. If it's loaded - * after cldr/event (and note it overwrites .get), it can trigger this - * overload again. - */ - function getOverload() { - - /** - * Overload Cldr.prototype.get(). - */ - superGet = Cldr.prototype.get; - Cldr.prototype.get = function( path ) { - var value = superGet.apply( this, arguments ); - path = pathNormalize( path, this.attributes ).join( "/" ); - globalEe.trigger( "get", [ path, value ] ); - this.ee.trigger( "get", [ path, value ] ); - return value; - }; - } - - Cldr._eventInit = getOverload; - getOverload(); - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/supplemental.js": -/*!*******************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/supplemental.js ***! - \*******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var alwaysArray = Cldr._alwaysArray; - - - - var supplementalMain = function( cldr ) { - - var prepend, supplemental; - - prepend = function( prepend ) { - return function( path ) { - path = alwaysArray( path ); - return cldr.get( [ prepend ].concat( path ) ); - }; - }; - - supplemental = prepend( "supplemental" ); - - // Week Data - // http://www.unicode.org/reports/tr35/tr35-dates.html#Week_Data - supplemental.weekData = prepend( "supplemental/weekData" ); - - supplemental.weekData.firstDay = function() { - return cldr.get( "supplemental/weekData/firstDay/{territory}" ) || - cldr.get( "supplemental/weekData/firstDay/001" ); - }; - - supplemental.weekData.minDays = function() { - var minDays = cldr.get( "supplemental/weekData/minDays/{territory}" ) || - cldr.get( "supplemental/weekData/minDays/001" ); - return parseInt( minDays, 10 ); - }; - - // Time Data - // http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data - supplemental.timeData = prepend( "supplemental/timeData" ); - - supplemental.timeData.allowed = function() { - return cldr.get( "supplemental/timeData/{territory}/_allowed" ) || - cldr.get( "supplemental/timeData/001/_allowed" ); - }; - - supplemental.timeData.preferred = function() { - return cldr.get( "supplemental/timeData/{territory}/_preferred" ) || - cldr.get( "supplemental/timeData/001/_preferred" ); - }; - - return supplemental; - - }; - - - - - var initSuper = Cldr.prototype.init; - - /** - * .init() automatically ran on construction. - * - * Overload .init(). - */ - Cldr.prototype.init = function() { - initSuper.apply( this, arguments ); - this.supplemental = supplementalMain( this ); - }; - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/cldr/unresolved.js": -/*!*****************************************************!*\ - !*** ./node_modules/cldrjs/dist/cldr/unresolved.js ***! - \*****************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ -(function( factory ) { - - if ( true ) { - // AMD. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(/*! ../cldr */ "./node_modules/cldrjs/dist/cldr.js") ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} - -}(function( Cldr ) { - - // Build optimization hack to avoid duplicating functions across modules. - var coreLoad = Cldr._coreLoad; - var jsonMerge = Cldr._jsonMerge; - var pathNormalize = Cldr._pathNormalize; - var resourceGet = Cldr._resourceGet; - var validatePresence = Cldr._validatePresence; - var validateTypePath = Cldr._validateTypePath; - - - - var bundleParentLookup = function( Cldr, locale ) { - var normalizedPath, parent; - - if ( locale === "root" ) { - return; - } - - // First, try to find parent on supplemental data. - normalizedPath = pathNormalize( [ "supplemental/parentLocales/parentLocale", locale ] ); - parent = resourceGet( Cldr._resolved, normalizedPath ) || resourceGet( Cldr._raw, normalizedPath ); - if ( parent ) { - return parent; - } - - // Or truncate locale. - parent = locale.substr( 0, locale.lastIndexOf( Cldr.localeSep ) ); - if ( !parent ) { - return "root"; - } - - return parent; - }; - - - - - // @path: normalized path - var resourceSet = function( data, path, value ) { - var i, - node = data, - length = path.length; - - for ( i = 0; i < length - 1; i++ ) { - if ( !node[ path[ i ] ] ) { - node[ path[ i ] ] = {}; - } - node = node[ path[ i ] ]; - } - node[ path[ i ] ] = value; - }; - - - var itemLookup = (function() { - - var lookup; - - lookup = function( Cldr, locale, path, attributes, childLocale ) { - var normalizedPath, parent, value; - - // 1: Finish recursion - // 2: Avoid infinite loop - if ( typeof locale === "undefined" /* 1 */ || locale === childLocale /* 2 */ ) { - return; - } - - // Resolve path - normalizedPath = pathNormalize( path, attributes ); - - // Check resolved (cached) data first - // 1: Due to #16, never use the cached resolved non-leaf nodes. It may not - // represent its leafs in its entirety. - value = resourceGet( Cldr._resolved, normalizedPath ); - if ( value !== undefined && typeof value !== "object" /* 1 */ ) { - return value; - } - - // Check raw data - value = resourceGet( Cldr._raw, normalizedPath ); - - if ( value === undefined ) { - // Or, lookup at parent locale - parent = bundleParentLookup( Cldr, locale ); - value = lookup( Cldr, parent, path, jsonMerge( attributes, { bundle: parent }), locale ); - } - - if ( value !== undefined ) { - // Set resolved (cached) - resourceSet( Cldr._resolved, normalizedPath, value ); - } - - return value; - }; - - return lookup; - -}()); - - - Cldr._raw = {}; - - /** - * Cldr.load( json [, json, ...] ) - * - * @json [JSON] CLDR data or [Array] Array of @json's. - * - * Load resolved or unresolved cldr data. - * Overwrite Cldr.load(). - */ - Cldr.load = function() { - Cldr._raw = coreLoad( Cldr, Cldr._raw, arguments ); - }; - - /** - * Overwrite Cldr.prototype.get(). - */ - Cldr.prototype.get = function( path ) { - validatePresence( path, "path" ); - validateTypePath( path, "path" ); - - // 1: use bundle as locale on item lookup for simplification purposes, because no other extended subtag is used anyway on bundle parent lookup. - // 2: during init(), this method is called, but bundle is yet not defined. Use "" as a workaround in this very specific scenario. - return itemLookup( Cldr, this.attributes && this.attributes.bundle /* 1 */ || "" /* 2 */, path, this.attributes ); - }; - - // In case cldr/unresolved is loaded after cldr/event, we trigger its overloads again. Because, .get is overwritten in here. - if ( Cldr._eventInit ) { - Cldr._eventInit(); - } - - return Cldr; - - - - -})); - - -/***/ }), - -/***/ "./node_modules/cldrjs/dist/node_main.js": -/*!***********************************************!*\ - !*** ./node_modules/cldrjs/dist/node_main.js ***! - \***********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -/** - * CLDR JavaScript Library v0.5.0 - * http://jquery.com/ - * - * Copyright 2013 Rafael Xavier de Souza - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2017-08-11T11:52Z - */ -/*! - * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier - * http://git.io/h4lmVg - */ - -// Cldr -module.exports = __webpack_require__( /*! ./cldr */ "./node_modules/cldrjs/dist/cldr.js" ); - -// Extent Cldr with the following modules -__webpack_require__( /*! ./cldr/event */ "./node_modules/cldrjs/dist/cldr/event.js" ); -__webpack_require__( /*! ./cldr/supplemental */ "./node_modules/cldrjs/dist/cldr/supplemental.js" ); -__webpack_require__( /*! ./cldr/unresolved */ "./node_modules/cldrjs/dist/cldr/unresolved.js" ); - - -/***/ }), - -/***/ "./src/Locale.js": -/*!***********************!*\ - !*** ./src/Locale.js ***! - \***********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -exports._init = _init; - -var _CldrDateTimeTextProvider = __webpack_require__(/*! ./format/cldr/CldrDateTimeTextProvider */ "./src/format/cldr/CldrDateTimeTextProvider.js"); - -var _CldrDateTimeTextProvider2 = _interopRequireDefault(_CldrDateTimeTextProvider); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var Locale = function () { - _createClass(Locale, null, [{ - key: 'getAvailableLocales', - value: function getAvailableLocales() { - return new _CldrDateTimeTextProvider2.default().getAvailableLocales(); - } - }]); - - function Locale(language) { - var country = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; - var localeString = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; - - _classCallCheck(this, Locale); - - this._language = language; - this._country = country; - this._localeString = localeString; - } - - _createClass(Locale, [{ - key: 'language', - value: function language() { - return this._language; - } - }, { - key: 'country', - value: function country() { - return this._country; - } - }, { - key: 'localeString', - value: function localeString() { - if (this._localeString.length > 0) { - return this._localeString; - } - if (this._country.length > 0) { - return this._language + '-' + this._country; - } else { - return this._language; - } - } - }, { - key: 'toString', - value: function toString() { - return 'Locale[' + this.localeString() + ']'; - } - }, { - key: 'equals', - value: function equals(other) { - if (!other) { - return false; - } - if (!(other instanceof Locale)) { - return false; - } - return this.localeString() === other.localeString(); - } - }]); - - return Locale; -}(); - -exports.default = Locale; -function _init() { - Locale.ENGLISH = new Locale('en'); - Locale.US = new Locale('en', 'US', 'en'); - Locale.UK = new Locale('en', 'GB'); - Locale.CANADA = new Locale('en', 'CA'); - Locale.FRENCH = new Locale('fr'); - Locale.FRANCE = new Locale('fr', 'FR', 'fr'); - Locale.GERMAN = new Locale('de'); - Locale.GERMANY = new Locale('de', 'DE', 'de'); -} - -/***/ }), - -/***/ "./src/_init.js": -/*!**********************!*\ - !*** ./src/_init.js ***! - \**********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _Locale = __webpack_require__(/*! ./Locale */ "./src/Locale.js"); - -var _WeekFields = __webpack_require__(/*! ./temporal/WeekFields */ "./src/temporal/WeekFields.js"); - -/* - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var isInit = false; - -function init() { - if (isInit) { - return; - } - - isInit = true; - - (0, _Locale._init)(); - (0, _WeekFields._init)(); -} - -init(); - -/***/ }), - -/***/ "./src/format/LocaleDateTimeFormatter.js": -/*!***********************************************!*\ - !*** ./src/format/LocaleDateTimeFormatter.js ***! - \***********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _Locale = __webpack_require__(/*! ../Locale */ "./src/Locale.js"); - -var _Locale2 = _interopRequireDefault(_Locale); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var requireNonNull = _jsJoda._.assert.requireNonNull; - -var LocaleDateTimeFormatter = function (_DateTimeFormatter) { - _inherits(LocaleDateTimeFormatter, _DateTimeFormatter); - - function LocaleDateTimeFormatter() { - _classCallCheck(this, LocaleDateTimeFormatter); - - return _possibleConstructorReturn(this, (LocaleDateTimeFormatter.__proto__ || Object.getPrototypeOf(LocaleDateTimeFormatter)).apply(this, arguments)); - } - - _createClass(LocaleDateTimeFormatter, [{ - key: 'withLocale', - value: function withLocale(locale) { - requireNonNull(locale, 'locale'); - if (locale.equals(this._locale)) { - return this; - } - return new _jsJoda.DateTimeFormatter(this._printerParser, locale, this._decimalStyle, this._resolverStyle, this._resolverFields, this._chrono, this._zone); - } - }]); - - return LocaleDateTimeFormatter; -}(_jsJoda.DateTimeFormatter); - -exports.default = LocaleDateTimeFormatter; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/LocaleStore.js": -/*!***********************************!*\ - !*** ./src/format/LocaleStore.js ***! - \***********************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var createEntry = exports.createEntry = function createEntry(text, field) { - return { - key: text, - value: field, - toString: function toString() { - return text + '->' + field; - } - }; -}; - -var _comparator = function _comparator(obj1, obj2) { - return obj2.key.length - obj1.key.length; -}; - -var LocaleStore = exports.LocaleStore = function () { - function LocaleStore(valueTextMap) { - _classCallCheck(this, LocaleStore); - - this._valueTextMap = valueTextMap; - var map = {}; - var allList = []; - Object.keys(valueTextMap).forEach(function (style) { - var reverse = {}; - Object.keys(valueTextMap[style]).forEach(function (key) { - var value = valueTextMap[style][key]; - if (reverse[value] === undefined) { - reverse[value] = createEntry(value, Number.parseInt(key)); - } - }); - var list = Object.values(reverse); - list.sort(_comparator); - map[style] = list; - allList = allList.concat(list); - map[null] = allList; - }); - allList.sort(_comparator); - this._parsable = map; - } - - _createClass(LocaleStore, [{ - key: 'getText', - value: function getText(value, style) { - var map = this._valueTextMap[style]; - return map != null ? map[value] : null; - } - }, { - key: 'getTextIterator', - value: function getTextIterator(style) { - var list = this._parsable[style]; - return list != null ? list[Symbol.iterator]() : null; - } - }]); - - return LocaleStore; -}(); - -/***/ }), - -/***/ "./src/format/cldr/CldrDateTimeFormatterBuilder.js": -/*!*********************************************************!*\ - !*** ./src/format/cldr/CldrDateTimeFormatterBuilder.js ***! - \*********************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _TextPrinterParser = __webpack_require__(/*! ../parser/TextPrinterParser */ "./src/format/parser/TextPrinterParser.js"); - -var _TextPrinterParser2 = _interopRequireDefault(_TextPrinterParser); - -var _CldrDateTimeTextProvider = __webpack_require__(/*! ./CldrDateTimeTextProvider */ "./src/format/cldr/CldrDateTimeTextProvider.js"); - -var _CldrDateTimeTextProvider2 = _interopRequireDefault(_CldrDateTimeTextProvider); - -var _CldrZoneTextPrinterParser = __webpack_require__(/*! ./CldrZoneTextPrinterParser */ "./src/format/cldr/CldrZoneTextPrinterParser.js"); - -var _CldrZoneTextPrinterParser2 = _interopRequireDefault(_CldrZoneTextPrinterParser); - -var _LocaleStore = __webpack_require__(/*! ../LocaleStore */ "./src/format/LocaleStore.js"); - -var _LocalizedOffsetPrinterParser = __webpack_require__(/*! ../parser/LocalizedOffsetPrinterParser */ "./src/format/parser/LocalizedOffsetPrinterParser.js"); - -var _LocalizedOffsetPrinterParser2 = _interopRequireDefault(_LocalizedOffsetPrinterParser); - -var _WeekFieldsPrinterParser = __webpack_require__(/*! ../parser/WeekFieldsPrinterParser */ "./src/format/parser/WeekFieldsPrinterParser.js"); - -var _WeekFieldsPrinterParser2 = _interopRequireDefault(_WeekFieldsPrinterParser); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var CldrDateTimeFormatterBuilder = function (_DateTimeFormatterBui) { - _inherits(CldrDateTimeFormatterBuilder, _DateTimeFormatterBui); - - function CldrDateTimeFormatterBuilder() { - _classCallCheck(this, CldrDateTimeFormatterBuilder); - - return _possibleConstructorReturn(this, (CldrDateTimeFormatterBuilder.__proto__ || Object.getPrototypeOf(CldrDateTimeFormatterBuilder)).apply(this, arguments)); - } - - _createClass(CldrDateTimeFormatterBuilder, [{ - key: 'appendText', - value: function appendText(field, styleOrMap) { - if (styleOrMap === undefined) { - return this.appendTextField(field); - } else if (styleOrMap instanceof _jsJoda.TextStyle) { - return this.appendTextFieldStyle(field, styleOrMap); - } else { - return this.appendTextFieldMap(field, styleOrMap); - } - } - }, { - key: 'appendTextField', - value: function appendTextField(field) { - return this.appendTextFieldStyle(field, _jsJoda.TextStyle.FULL); - } - }, { - key: 'appendTextFieldStyle', - value: function appendTextFieldStyle(field, textStyle) { - requireNonNull(field, 'field'); - requireInstance(field, _jsJoda.TemporalField, 'field'); - requireNonNull(textStyle, 'textStyle'); - requireInstance(textStyle, _jsJoda.TextStyle, 'textStyle'); - this._appendInternal(new _TextPrinterParser2.default(field, textStyle, new _CldrDateTimeTextProvider2.default())); - return this; - } - }, { - key: 'appendTextFieldMap', - value: function appendTextFieldMap(field, textLookup) { - requireNonNull(field, 'field'); - requireInstance(field, _jsJoda.ChronoField, 'field'); - requireNonNull(textLookup, 'textLookup'); - var copy = Object.assign({}, textLookup); - var map = {}; - map[_jsJoda.TextStyle.FULL] = copy; - var store = new _LocaleStore.LocaleStore(map); - var provider = { - getText: function getText(field, value, style) { - return store.getText(value, style); - }, - getTextIterator: function getTextIterator(field, style) { - return store.getTextIterator(style); - } - }; - this._appendInternal(new _TextPrinterParser2.default(field, _jsJoda.TextStyle.FULL, provider)); - return this; - } - }, { - key: 'appendWeekField', - value: function appendWeekField(field, count) { - requireNonNull(field, 'field'); - requireNonNull(count, 'count'); - this._appendInternal(new _WeekFieldsPrinterParser2.default(field, count)); - return this; - } - }, { - key: 'appendZoneText', - value: function appendZoneText(textStyle) { - this._appendInternal(new _CldrZoneTextPrinterParser2.default(textStyle)); - return this; - } - }, { - key: 'appendLocalizedOffset', - value: function appendLocalizedOffset(textStyle) { - requireNonNull(textStyle, 'textStyle'); - if (textStyle !== _jsJoda.TextStyle.FULL && textStyle !== _jsJoda.TextStyle.SHORT) { - throw new _jsJoda.IllegalArgumentException('Style must be either full or short'); - } - this._appendInternal(new _LocalizedOffsetPrinterParser2.default(textStyle)); - return this; - } - }]); - - return CldrDateTimeFormatterBuilder; -}(_jsJoda.DateTimeFormatterBuilder); - -exports.default = CldrDateTimeFormatterBuilder; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/cldr/CldrDateTimeTextProvider.js": -/*!*****************************************************!*\ - !*** ./src/format/cldr/CldrDateTimeTextProvider.js ***! - \*****************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -var _LocaleStore = __webpack_require__(/*! ../LocaleStore */ "./src/format/LocaleStore.js"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var CldrDateTimeTextProvider = function () { - function CldrDateTimeTextProvider() { - _classCallCheck(this, CldrDateTimeTextProvider); - - this._cache = {}; - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - } - - _createClass(CldrDateTimeTextProvider, [{ - key: 'getAvailableLocales', - value: function getAvailableLocales() { - if (true) { - return ["it","it-IT"]; - } - - return (0, _cldrData2.default)('availableLocales.json').availableLocales; - } - }, { - key: 'getText', - value: function getText(field, value, style, locale) { - var store = this._findStore(field, locale); - if (store instanceof _LocaleStore.LocaleStore) { - return store.getText(value, style); - } - return null; - } - }, { - key: 'getTextIterator', - value: function getTextIterator(field, style, locale) { - var store = this._findStore(field, locale); - if (store instanceof _LocaleStore.LocaleStore) { - return store.getTextIterator(style); - } - return null; - } - }, { - key: '_findStore', - value: function _findStore(field, locale) { - var key = (0, _LocaleStore.createEntry)(field, locale); - var store = this._cache[key]; - if (store === undefined) { - store = this._createStore(field, locale); - this._cache[key] = store; - } - return store; - } - }, { - key: '_createStore', - value: function _createStore(field, locale) { - _cldrjs2.default.load((0, _cldrData2.default)('main/' + locale.localeString() + '/ca-gregorian.json')); - var cldr = new _cldrjs2.default(locale.localeString()); - if (field === _jsJoda.ChronoField.MONTH_OF_YEAR) { - var monthsData = cldr.main('dates/calendars/gregorian/months/format'); - var styleMap = {}; - var data = {}; - data[1] = monthsData.wide[1]; - data[2] = monthsData.wide[2]; - data[3] = monthsData.wide[3]; - data[4] = monthsData.wide[4]; - data[5] = monthsData.wide[5]; - data[6] = monthsData.wide[6]; - data[7] = monthsData.wide[7]; - data[8] = monthsData.wide[8]; - data[9] = monthsData.wide[9]; - data[10] = monthsData.wide[10]; - data[11] = monthsData.wide[11]; - data[12] = monthsData.wide[12]; - styleMap[_jsJoda.TextStyle.FULL] = data; - - data = {}; - data[1] = monthsData.narrow[1]; - data[2] = monthsData.narrow[2]; - data[3] = monthsData.narrow[3]; - data[4] = monthsData.narrow[4]; - data[5] = monthsData.narrow[5]; - data[6] = monthsData.narrow[6]; - data[7] = monthsData.narrow[7]; - data[8] = monthsData.narrow[8]; - data[9] = monthsData.narrow[9]; - data[10] = monthsData.narrow[10]; - data[11] = monthsData.narrow[11]; - data[12] = monthsData.narrow[12]; - styleMap[_jsJoda.TextStyle.NARROW] = data; - - data = {}; - data[1] = monthsData.abbreviated[1]; - data[2] = monthsData.abbreviated[2]; - data[3] = monthsData.abbreviated[3]; - data[4] = monthsData.abbreviated[4]; - data[5] = monthsData.abbreviated[5]; - data[6] = monthsData.abbreviated[6]; - data[7] = monthsData.abbreviated[7]; - data[8] = monthsData.abbreviated[8]; - data[9] = monthsData.abbreviated[9]; - data[10] = monthsData.abbreviated[10]; - data[11] = monthsData.abbreviated[11]; - data[12] = monthsData.abbreviated[12]; - styleMap[_jsJoda.TextStyle.SHORT] = data; - return this._createLocaleStore(styleMap); - } - if (field === _jsJoda.ChronoField.DAY_OF_WEEK) { - var daysData = cldr.main('dates/calendars/gregorian/days/format'); - var _styleMap = {}; - var _data = {}; - _data[1] = daysData.wide.mon; - _data[2] = daysData.wide.tue; - _data[3] = daysData.wide.wed; - _data[4] = daysData.wide.thu; - _data[5] = daysData.wide.fri; - _data[6] = daysData.wide.sat; - _data[7] = daysData.wide.sun; - _styleMap[_jsJoda.TextStyle.FULL] = _data; - - _data = {}; - _data[1] = daysData.narrow.mon; - _data[2] = daysData.narrow.tue; - _data[3] = daysData.narrow.wed; - _data[4] = daysData.narrow.thu; - _data[5] = daysData.narrow.fri; - _data[6] = daysData.narrow.sat; - _data[7] = daysData.narrow.sun; - _styleMap[_jsJoda.TextStyle.NARROW] = _data; - - _data = {}; - _data[1] = daysData.abbreviated.mon; - _data[2] = daysData.abbreviated.tue; - _data[3] = daysData.abbreviated.wed; - _data[4] = daysData.abbreviated.thu; - _data[5] = daysData.abbreviated.fri; - _data[6] = daysData.abbreviated.sat; - _data[7] = daysData.abbreviated.sun; - _styleMap[_jsJoda.TextStyle.SHORT] = _data; - return this._createLocaleStore(_styleMap); - } - if (field === _jsJoda.ChronoField.AMPM_OF_DAY) { - var dayPeriodsData = cldr.main('dates/calendars/gregorian/dayPeriods/format'); - var _styleMap2 = {}; - var _data2 = {}; - _data2[0] = dayPeriodsData.wide.am; - _data2[1] = dayPeriodsData.wide.pm; - _styleMap2[_jsJoda.TextStyle.FULL] = _data2; - - _data2 = {}; - _data2[0] = dayPeriodsData.narrow.am; - _data2[1] = dayPeriodsData.narrow.pm; - _styleMap2[_jsJoda.TextStyle.NARROW] = _data2; - - _data2 = {}; - _data2[0] = dayPeriodsData.abbreviated.am; - _data2[1] = dayPeriodsData.abbreviated.pm; - _styleMap2[_jsJoda.TextStyle.SHORT] = _data2; - - return this._createLocaleStore(_styleMap2); - } - if (field === _jsJoda.ChronoField.ERA) { - var erasData = cldr.main('dates/calendars/gregorian/eras'); - var _styleMap3 = {}; - var _data3 = {}; - _data3[0] = erasData.eraNames['0']; - _data3[1] = erasData.eraNames['1']; - _styleMap3[_jsJoda.TextStyle.FULL] = _data3; - - _data3 = {}; - _data3[0] = erasData.eraNarrow['0']; - _data3[1] = erasData.eraNarrow['1']; - _styleMap3[_jsJoda.TextStyle.NARROW] = _data3; - - _data3 = {}; - _data3[0] = erasData.eraAbbr['0']; - _data3[1] = erasData.eraAbbr['1']; - _styleMap3[_jsJoda.TextStyle.SHORT] = _data3; - - return this._createLocaleStore(_styleMap3); - } - if (field === _jsJoda.IsoFields.QUARTER_OF_YEAR) { - var quartersData = cldr.main('dates/calendars/gregorian/quarters/format'); - var _styleMap4 = {}; - var _data4 = {}; - _data4[1] = quartersData.wide['1']; - _data4[2] = quartersData.wide['2']; - _data4[3] = quartersData.wide['3']; - _data4[4] = quartersData.wide['4']; - _styleMap4[_jsJoda.TextStyle.FULL] = _data4; - - _data4 = {}; - _data4[1] = quartersData.narrow['1']; - _data4[2] = quartersData.narrow['2']; - _data4[3] = quartersData.narrow['3']; - _data4[4] = quartersData.narrow['4']; - _styleMap4[_jsJoda.TextStyle.NARROW] = _data4; - - _data4 = {}; - _data4[1] = quartersData.abbreviated['1']; - _data4[2] = quartersData.abbreviated['2']; - _data4[3] = quartersData.abbreviated['3']; - _data4[4] = quartersData.abbreviated['4']; - _styleMap4[_jsJoda.TextStyle.SHORT] = _data4; - - return this._createLocaleStore(_styleMap4); - } - return null; - } - }, { - key: '_createLocaleStore', - value: function _createLocaleStore(valueTextMap) { - valueTextMap[_jsJoda.TextStyle.FULL_STANDALONE] = valueTextMap[_jsJoda.TextStyle.FULL]; - valueTextMap[_jsJoda.TextStyle.SHORT_STANDALONE] = valueTextMap[_jsJoda.TextStyle.SHORT]; - - if (Object.keys(valueTextMap).includes(_jsJoda.TextStyle.NARROW) && !Object.keys(valueTextMap).includes(_jsJoda.TextStyle.NARROW_STANDALONE)) { - valueTextMap[_jsJoda.TextStyle.NARROW_STANDALONE] = valueTextMap[_jsJoda.TextStyle.NARROW]; - } - return new _LocaleStore.LocaleStore(valueTextMap); - } - }]); - - return CldrDateTimeTextProvider; -}(); - -exports.default = CldrDateTimeTextProvider; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/cldr/CldrZoneTextPrinterParser.js": -/*!******************************************************!*\ - !*** ./src/format/cldr/CldrZoneTextPrinterParser.js ***! - \******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var LENGTH_COMPARATOR = function LENGTH_COMPARATOR(str1, str2) { - var cmp = str2.length - str1.length; - if (cmp === 0) { - cmp = str1.localeCompare(str2); - } - return cmp; -}; - -var CldrZoneTextPrinterParser = function () { - function CldrZoneTextPrinterParser(textStyle) { - _classCallCheck(this, CldrZoneTextPrinterParser); - - requireNonNull(textStyle, 'textStyle'); - requireInstance(textStyle, _jsJoda.TextStyle, 'textStyle'); - this._textStyle = textStyle; - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/metaZones.json')); - } - - _createClass(CldrZoneTextPrinterParser, [{ - key: '_resolveZoneIdText', - value: function _resolveZoneIdText(cldr, zoneId, style, type, mapZones) { - var zoneData = cldr.main('dates/timeZoneNames/zone/' + zoneId + '/' + style + '/' + type); - if (zoneData) { - return zoneData; - } else { - var metazoneInfo = cldr.get('supplemental/metaZones/metazoneInfo/timezone/' + zoneId); - if (metazoneInfo) { - var metazone = metazoneInfo[metazoneInfo.length - 1]['usesMetazone']['_mzone']; - var metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/' + type); - if (metaZoneData) { - return metaZoneData; - } else { - metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/generic'); - if (!metaZoneData) { - metaZoneData = cldr.main('dates/timeZoneNames/metazone/' + metazone + '/' + style + '/standard'); - } - if (metaZoneData) { - return metaZoneData; - } else { - var preferredZone = mapZones[metazone][cldr.attributes.territory]; - if (preferredZone) { - if (preferredZone !== zoneId) { - return this._resolveZoneIdText(cldr, preferredZone, style, type, mapZones); - } - } else { - var goldenZone = mapZones[metazone]['001']; - if (goldenZone !== zoneId) { - return this._resolveZoneIdText(cldr, goldenZone, style, type, mapZones); - } - } - } - } - } - } - } - }, { - key: 'print', - value: function print(context, buf) { - - var zone = context.getValueQuery(_jsJoda.TemporalQueries.zoneId()); - - if (zone == null) { - return false; - } - if (zone.normalized() instanceof _jsJoda.ZoneOffset) { - buf.append(zone.id()); - return true; - } - var daylight = false; - var hasDaylightSupport = false; - - var tzType = hasDaylightSupport ? daylight ? 'daylight' : 'standard' : 'generic'; - var tzstyle = this._textStyle.asNormal() === _jsJoda.TextStyle.FULL ? 'long' : 'short'; - _cldrjs2.default.load((0, _cldrData2.default)('main/' + context.locale().localeString() + '/timeZoneNames.json')); - var cldr = new _cldrjs2.default(context.locale().localeString()); - var mapZones = {}; - - cldr.get('supplemental/metaZones/metazones').forEach(function (metaZone) { - if (metaZone.mapZone) { - if (!mapZones[metaZone.mapZone._other]) { - mapZones[metaZone.mapZone._other] = {}; - } - mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type; - } - }); - - var text = this._resolveZoneIdText(cldr, zone.id(), tzstyle, tzType, mapZones); - if (text) { - buf.append(text); - } else { - buf.append(zone.id()); - } - return true; - } - }, { - key: 'parse', - value: function parse(context, text, position) { - var ids = {}; - _cldrjs2.default.load((0, _cldrData2.default)('main/' + context.locale().localeString() + '/timeZoneNames.json')); - var cldr = new _cldrjs2.default(context.locale().localeString()); - var mapZones = {}; - - cldr.get('supplemental/metaZones/metazones').forEach(function (metaZone) { - if (metaZone.mapZone) { - if (!mapZones[metaZone.mapZone._other]) { - mapZones[metaZone.mapZone._other] = {}; - } - mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type; - } - }); - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = _jsJoda.ZoneRulesProvider.getAvailableZoneIds()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var id = _step.value; - - ids[id] = id; - var tzstyle = this._textStyle.asNormal() === _jsJoda.TextStyle.FULL ? 'long' : 'short'; - - var genericText = this._resolveZoneIdText(cldr, id, tzstyle, 'generic', mapZones); - if (genericText) { - ids[genericText] = id; - } - var standardText = this._resolveZoneIdText(cldr, id, tzstyle, 'standard', mapZones); - if (standardText) { - ids[standardText] = id; - } - var daylightText = this._resolveZoneIdText(cldr, id, tzstyle, 'daylight', mapZones); - if (daylightText) { - ids[daylightText] = id; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - var sortedKeys = Object.keys(ids).sort(LENGTH_COMPARATOR); - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = sortedKeys[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var name = _step2.value; - - if (context.subSequenceEquals(text, position, name, 0, name.length)) { - context.setParsedZone(_jsJoda.ZoneId.of(ids[name])); - return position + name.length; - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - return ~position; - } - }, { - key: 'toString', - value: function toString() { - return 'ZoneText(' + this._textStyle + ')'; - } - }]); - - return CldrZoneTextPrinterParser; -}(); - -exports.default = CldrZoneTextPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/LocalizedOffsetPrinterParser.js": -/*!***********************************************************!*\ - !*** ./src/format/parser/LocalizedOffsetPrinterParser.js ***! - \***********************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var MathUtil = _jsJoda._.MathUtil; - -var LocalizedOffsetPrinterParser = function () { - function LocalizedOffsetPrinterParser(textStyle) { - _classCallCheck(this, LocalizedOffsetPrinterParser); - - this._textStyle = textStyle; - } - - _createClass(LocalizedOffsetPrinterParser, [{ - key: 'textStyle', - value: function textStyle() { - return this._textStyle; - } - }, { - key: 'print', - value: function print(context, buf) { - var offsetSecs = context.getValue(_jsJoda.ChronoField.OFFSET_SECONDS); - - if (offsetSecs == null) { - return false; - } - buf.append('GMT'); - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return new _jsJoda.DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').print(context, buf); - } - var totalSecs = MathUtil.safeToInt(offsetSecs); - if (totalSecs !== 0) { - var absHours = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 3600), 100)); - var absMinutes = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 60), 60)); - var absSeconds = Math.abs(MathUtil.intMod(totalSecs, 60)); - buf.append(totalSecs < 0 ? '-' : '+').append(absHours); - if (absMinutes > 0 || absSeconds > 0) { - buf.append(':').append(MathUtil.intDiv(absMinutes, 10)).append(MathUtil.intMod(absMinutes, 10)); - if (absSeconds > 0) { - buf.append(':').append(MathUtil.intDiv(absSeconds, 10)).append(MathUtil.intMod(absSeconds, 10)); - } - } - } - return true; - } - }, { - key: 'parse', - value: function parse(context, text, position) { - if (context.subSequenceEquals(text, position, 'GMT', 0, 3) === false) { - return ~position; - } - position += 3; - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return new _jsJoda.DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').parse(context, text, position); - } - var end = text.length; - if (position === end) { - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, 0, position, position); - } - var sign = text.charAt(position); - if (sign !== '+' && sign !== '-') { - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, 0, position, position); - } - var negative = sign === '-' ? -1 : 1; - - if (position === end) { - return ~position; - } - position++; - - var ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var hour = MathUtil.parseInt(ch); - if (position !== end) { - ch = text.charAt(position); - if (ch >= '0' && ch <= '9') { - hour = hour * 10 + MathUtil.parseInt(ch); - if (hour > 23) { - return ~position; - } - position++; - } - } - if (position === end || text.charAt(position) !== ':') { - var _offset = negative * 3600 * hour; - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, _offset, position, position); - } - position++; - - if (position > end - 2) { - return ~position; - } - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var min = MathUtil.parseInt(ch); - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - min = min * 10 + MathUtil.parseInt(ch); - if (min > 59) { - return ~position; - } - if (position === end || text.charAt(position) !== ':') { - var _offset2 = negative * (3600 * hour + 60 * min); - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, _offset2, position, position); - } - position++; - - if (position > end - 2) { - return ~position; - } - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - var sec = MathUtil.parseInt(ch); - ch = text.charAt(position); - if (ch < '0' || ch > '9') { - return ~position; - } - position++; - sec = sec * 10 + MathUtil.parseInt(ch); - if (sec > 59) { - return ~position; - } - var offset = negative * (3600 * hour + 60 * min + sec); - return context.setParsedField(_jsJoda.ChronoField.OFFSET_SECONDS, offset, position, position); - } - }, { - key: 'toString', - value: function toString() { - return 'LocalizedOffset(' + this._textStyle + ')'; - } - }]); - - return LocalizedOffsetPrinterParser; -}(); - -exports.default = LocalizedOffsetPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/TextPrinterParser.js": -/*!************************************************!*\ - !*** ./src/format/parser/TextPrinterParser.js ***! - \************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /** - * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper - * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos - * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var TextPrinterParser = function () { - function TextPrinterParser(field, textStyle, provider) { - _classCallCheck(this, TextPrinterParser); - - this._field = field; - this._textStyle = textStyle; - this._provider = provider; - } - - _createClass(TextPrinterParser, [{ - key: 'field', - value: function field() { - return this._field; - } - }, { - key: 'textStyle', - value: function textStyle() { - return this._textStyle; - } - }, { - key: 'provider', - value: function provider() { - return this._provider; - } - }, { - key: 'print', - value: function print(context, buf) { - var value = context.getValue(this._field); - if (value === null) { - return false; - } - var text = this._provider.getText(this._field, value, this._textStyle, context.locale()); - if (text === null) { - return this._numberPrinterParser().print(context, buf); - } - buf.append(text); - return true; - } - }, { - key: 'parse', - value: function parse(context, parseText, position) { - var length = parseText.length; - if (position < 0 || position > length) { - throw new _jsJoda.IllegalArgumentException('The position is invalid: ' + position); - } - var style = context.isStrict() ? this._textStyle : null; - var it = this._provider.getTextIterator(this._field, style, context.locale()); - if (it != null) { - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = it[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var entry = _step.value; - - var itText = entry.key; - if (context.subSequenceEquals(itText, 0, parseText, position, itText.length)) { - return context.setParsedField(this._field, entry.value, position, position + itText.length); - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - if (context.isStrict()) { - return ~position; - } - } - return this._numberPrinterParser().parse(context, parseText, position); - } - }, { - key: '_numberPrinterParser', - value: function _numberPrinterParser() { - if (this._currentNumberPrinterParser == null) { - this._currentNumberPrinterParser = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(this._field, 1, 19, _jsJoda.SignStyle.NORMAL); - } - return this._currentNumberPrinterParser; - } - }, { - key: 'toString', - value: function toString() { - if (this._textStyle === _jsJoda.TextStyle.FULL) { - return 'Text(' + this._field + ')'; - } - return 'Text(' + this._field + ',' + this._textStyle + ')'; - } - }]); - - return TextPrinterParser; -}(); - -exports.default = TextPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/format/parser/WeekFieldsPrinterParser.js": -/*!******************************************************!*\ - !*** ./src/format/parser/WeekFieldsPrinterParser.js ***! - \******************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _WeekFields = __webpack_require__(/*! ../../temporal/WeekFields */ "./src/temporal/WeekFields.js"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var StringBuilder = _jsJoda._.StringBuilder; - -var WeekFieldsPrinterParser = function () { - function WeekFieldsPrinterParser(letter, count) { - _classCallCheck(this, WeekFieldsPrinterParser); - - this._letter = letter; - this._count = count; - } - - _createClass(WeekFieldsPrinterParser, [{ - key: 'print', - value: function print(context, buf) { - var weekFields = _WeekFields.WeekFields.of(context.locale()); - var pp = this._evaluate(weekFields); - return pp.print(context, buf); - } - }, { - key: 'parse', - value: function parse(context, text, position) { - var weekFields = _WeekFields.WeekFields.of(context.locale()); - var pp = this._evaluate(weekFields); - return pp.parse(context, text, position); - } - }, { - key: '_evaluate', - value: function _evaluate(weekFields) { - var pp = null; - switch (this._letter) { - case 'e': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'c': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'w': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfWeekBasedYear(), this._count, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'W': - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfMonth(), 1, 2, _jsJoda.SignStyle.NOT_NEGATIVE); - break; - case 'Y': - if (this._count === 2) { - pp = new _jsJoda.DateTimeFormatterBuilder.ReducedPrinterParser(weekFields.weekBasedYear(), 2, 2, 0, _jsJoda.DateTimeFormatterBuilder.ReducedPrinterParser.BASE_DATE); - } else { - pp = new _jsJoda.DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekBasedYear(), this._count, 19, this._count < 4 ? _jsJoda.SignStyle.NORMAL : _jsJoda.SignStyle.EXCEEDS_PAD, -1); - } - break; - } - return pp; - } - }, { - key: 'toString', - value: function toString() { - var sb = new StringBuilder(30); - sb.append('Localized('); - if (this._letter === 'Y') { - if (this._count === 1) { - sb.append('WeekBasedYear'); - } else if (this._count === 2) { - sb.append('ReducedValue(WeekBasedYear,2,2,2000-01-01)'); - } else { - sb.append('WeekBasedYear,').append(this._count).append(',').append(19).append(',').append(this._count < 4 ? _jsJoda.SignStyle.NORMAL : _jsJoda.SignStyle.EXCEEDS_PAD); - } - } else { - if (this._letter === 'c' || this._letter === 'e') { - sb.append('DayOfWeek'); - } else if (this._letter === 'w') { - sb.append('WeekOfWeekBasedYear'); - } else if (this._letter === 'W') { - sb.append('WeekOfMonth'); - } - sb.append(','); - sb.append(this._count); - } - sb.append(')'); - return sb.toString(); - } - }]); - - return WeekFieldsPrinterParser; -}(); - -exports.default = WeekFieldsPrinterParser; -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/js-joda-locale.js": -/*!*******************************!*\ - !*** ./src/js-joda-locale.js ***! - \*******************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _plug = __webpack_require__(/*! ./plug */ "./src/plug.js"); - -var _plug2 = _interopRequireDefault(_plug); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = _plug2.default; /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -module.exports = exports['default']; - -/***/ }), - -/***/ "./src/plug.js": -/*!*********************!*\ - !*** ./src/plug.js ***! - \*********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports.default = function (jsJoda) { - Object.getOwnPropertyNames(_CldrDateTimeFormatterBuilder2.default.prototype).forEach(function (prop) { - if (prop !== 'constructor') { - jsJoda.DateTimeFormatterBuilder.prototype[prop] = _CldrDateTimeFormatterBuilder2.default.prototype[prop]; - } - }); - - Object.getOwnPropertyNames(_LocaleDateTimeFormatter2.default.prototype).forEach(function (prop) { - if (prop !== 'constructor') { - jsJoda.DateTimeFormatter.prototype[prop] = _LocaleDateTimeFormatter2.default.prototype[prop]; - } - }); - - jsJoda.Locale = _Locale2.default; -}; - -var _CldrDateTimeFormatterBuilder = __webpack_require__(/*! ./format/cldr/CldrDateTimeFormatterBuilder */ "./src/format/cldr/CldrDateTimeFormatterBuilder.js"); - -var _CldrDateTimeFormatterBuilder2 = _interopRequireDefault(_CldrDateTimeFormatterBuilder); - -var _LocaleDateTimeFormatter = __webpack_require__(/*! ./format/LocaleDateTimeFormatter */ "./src/format/LocaleDateTimeFormatter.js"); - -var _LocaleDateTimeFormatter2 = _interopRequireDefault(_LocaleDateTimeFormatter); - -var _Locale = __webpack_require__(/*! ./Locale */ "./src/Locale.js"); - -var _Locale2 = _interopRequireDefault(_Locale); - -__webpack_require__(/*! ./_init */ "./src/_init.js"); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = exports['default']; /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -/***/ }), - -/***/ "./src/temporal/WeekFields.js": -/*!************************************!*\ - !*** ./src/temporal/WeekFields.js ***! - \************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.WeekFields = exports.ComputedDayOfField = undefined; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* - * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -exports._init = _init; - -var _jsJoda = __webpack_require__(/*! js-joda */ "js-joda"); - -var _cldrData = __webpack_require__(/*! cldr-data */ "./utils/load_cldrData.prebuilt.js"); - -var _cldrData2 = _interopRequireDefault(_cldrData); - -var _cldrjs = __webpack_require__(/*! cldrjs */ "./node_modules/cldrjs/dist/node_main.js"); - -var _cldrjs2 = _interopRequireDefault(_cldrjs); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var MathUtil = _jsJoda._.MathUtil, - _jodaInternal$assert = _jsJoda._.assert, - requireNonNull = _jodaInternal$assert.requireNonNull, - requireInstance = _jodaInternal$assert.requireInstance; - -var DAY_OF_WEEK_RANGE = _jsJoda.ValueRange.of(1, 7); -var WEEK_OF_MONTH_RANGE = _jsJoda.ValueRange.of(0, 1, 4, 6); -var WEEK_OF_YEAR_RANGE = _jsJoda.ValueRange.of(0, 1, 52, 54); -var WEEK_OF_WEEK_BASED_YEAR_RANGE = _jsJoda.ValueRange.of(1, 52, 53); -var WEEK_BASED_YEAR_RANGE = _jsJoda.ChronoField.YEAR.range(); - -var _weekDayMap = { - 'mon': _jsJoda.DayOfWeek.MONDAY, - 'tue': _jsJoda.DayOfWeek.TUESDAY, - 'wed': _jsJoda.DayOfWeek.WEDNESDAY, - 'thu': _jsJoda.DayOfWeek.THURSDAY, - 'fri': _jsJoda.DayOfWeek.FRIDAY, - 'sat': _jsJoda.DayOfWeek.SATURDAY, - 'sun': _jsJoda.DayOfWeek.SUNDAY -}; - -var ComputedDayOfField = exports.ComputedDayOfField = function () { - _createClass(ComputedDayOfField, null, [{ - key: 'ofDayOfWeekField', - value: function ofDayOfWeekField(weekDef) { - return new ComputedDayOfField('DayOfWeek', weekDef, _jsJoda.ChronoUnit.DAYS, _jsJoda.ChronoUnit.WEEKS, DAY_OF_WEEK_RANGE); - } - }, { - key: 'ofWeekOfMonthField', - value: function ofWeekOfMonthField(weekDef) { - return new ComputedDayOfField('WeekOfMonth', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.ChronoUnit.MONTHS, WEEK_OF_MONTH_RANGE); - } - }, { - key: 'ofWeekOfYearField', - value: function ofWeekOfYearField(weekDef) { - return new ComputedDayOfField('WeekOfYear', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.ChronoUnit.YEARS, WEEK_OF_YEAR_RANGE); - } - }, { - key: 'ofWeekOfWeekBasedYearField', - value: function ofWeekOfWeekBasedYearField(weekDef) { - return new ComputedDayOfField('WeekOfWeekBasedYear', weekDef, _jsJoda.ChronoUnit.WEEKS, _jsJoda.IsoFields.WEEK_BASED_YEARS, WEEK_OF_WEEK_BASED_YEAR_RANGE); - } - }, { - key: 'ofWeekBasedYearField', - value: function ofWeekBasedYearField(weekDef) { - return new ComputedDayOfField('WeekBasedYear', weekDef, _jsJoda.IsoFields.WEEK_BASED_YEARS, _jsJoda.ChronoUnit.FOREVER, WEEK_BASED_YEAR_RANGE); - } - }]); - - function ComputedDayOfField(name, weekDef, baseUnit, rangeUnit, range) { - _classCallCheck(this, ComputedDayOfField); - - this._name = name; - this._weekDef = weekDef; - this._baseUnit = baseUnit; - this._rangeUnit = rangeUnit; - this._range = range; - } - - _createClass(ComputedDayOfField, [{ - key: 'getFrom', - value: function getFrom(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var dow = this._localizedDayOfWeek(temporal, sow); - - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return dow; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - return this._localizedWeekOfMonth(temporal, dow); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return this._localizedWeekOfYear(temporal, dow); - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return this._localizedWOWBY(temporal); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return this._localizedWBY(temporal); - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - } - }, { - key: '_localizedDayOfWeek', - value: function _localizedDayOfWeek(temporal, sow) { - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - return MathUtil.floorMod(isoDow - sow, 7) + 1; - } - }, { - key: '_localizedWeekOfMonth', - value: function _localizedWeekOfMonth(temporal, dow) { - var dom = temporal.get(_jsJoda.ChronoField.DAY_OF_MONTH); - var offset = this._startOfWeekOffset(dom, dow); - return ComputedDayOfField._computeWeek(offset, dom); - } - }, { - key: '_localizedWeekOfYear', - value: function _localizedWeekOfYear(temporal, dow) { - var doy = temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR); - var offset = this._startOfWeekOffset(doy, dow); - return ComputedDayOfField._computeWeek(offset, doy); - } - }, { - key: '_localizedWOWBY', - value: function _localizedWOWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - var previous = _jsJoda.LocalDate.from(temporal).minus(1, _jsJoda.ChronoUnit.WEEKS); - return this._localizedWeekOfYear(previous, dow) + 1; - } else if (woy >= 53) { - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return woy - (weekIndexOfFirstWeekNextYear - 1); - } - } - return woy; - } - }, { - key: '_localizedWBY', - value: function _localizedWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - return year - 1; - } else if (woy < 53) { - return year; - } - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return year + 1; - } - return year; - } - }, { - key: '_startOfWeekOffset', - value: function _startOfWeekOffset(day, dow) { - var weekStart = MathUtil.floorMod(day - dow, 7); - var offset = -weekStart; - if (weekStart + 1 > this._weekDef.minimalDaysInFirstWeek()) { - offset = 7 - weekStart; - } - return offset; - } - }, { - key: 'adjustInto', - value: function adjustInto(temporal, newValue) { - var newVal = this._range.checkValidIntValue(newValue, this); - var currentVal = temporal.get(this); - if (newVal === currentVal) { - return temporal; - } - if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - var baseWowby = temporal.get(this._weekDef.weekOfWeekBasedYear()); - var diffWeeks = MathUtil.roundDown((newValue - currentVal) * 52.1775); - var result = temporal.plus(diffWeeks, _jsJoda.ChronoUnit.WEEKS); - if (result.get(this) > newVal) { - var newWowby = result.get(this._weekDef.weekOfWeekBasedYear()); - result = result.minus(newWowby, _jsJoda.ChronoUnit.WEEKS); - } else { - if (result.get(this) < newVal) { - result = result.plus(2, _jsJoda.ChronoUnit.WEEKS); - } - - var _newWowby = result.get(this._weekDef.weekOfWeekBasedYear()); - result = result.plus(baseWowby - _newWowby, _jsJoda.ChronoUnit.WEEKS); - if (result.get(this) > newVal) { - result = result.minus(1, _jsJoda.ChronoUnit.WEEKS); - } - } - return result; - } - - var delta = newVal - currentVal; - return temporal.plus(delta, this._baseUnit); - } - }, { - key: 'resolve', - value: function resolve(fieldValues, partialTemporal, resolverStyle) { - var sow = this._weekDef.firstDayOfWeek().value(); - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - var value = fieldValues.remove(this); - var localDow = this._range.checkValidIntValue(value, this); - var _isoDow = MathUtil.floorMod(sow - 1 + (localDow - 1), 7) + 1; - fieldValues.put(_jsJoda.ChronoField.DAY_OF_WEEK, _isoDow); - return null; - } - if (fieldValues.containsKey(_jsJoda.ChronoField.DAY_OF_WEEK) === false) { - return null; - } - - if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - if (fieldValues.containsKey(this._weekDef.weekOfWeekBasedYear()) === false) { - return null; - } - - var _isoDow2 = _jsJoda.ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.DAY_OF_WEEK)); - var _dow = MathUtil.floorMod(_isoDow2 - sow, 7) + 1; - var wby = this.range().checkValidIntValue(fieldValues.get(this), this); - var date = void 0; - var days = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - date = _jsJoda.LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); - var wowby = fieldValues.get(this._weekDef.weekOfWeekBasedYear()); - var dateDow = this._localizedDayOfWeek(date, sow); - var weeks = wowby - this._localizedWeekOfYear(date, dateDow); - days = weeks * 7 + (_dow - dateDow); - } else { - date = _jsJoda.LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); - var _wowby = this._weekDef.weekOfWeekBasedYear().range().checkValidIntValue(fieldValues.get(this._weekDef.weekOfWeekBasedYear()), this._weekDef.weekOfWeekBasedYear); - var _dateDow = this._localizedDayOfWeek(date, sow); - var _weeks = _wowby - this._localizedWeekOfYear(date, _dateDow); - days = _weeks * 7 + (_dow - _dateDow); - } - date = date.plus(days, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (date.getLong(this) !== fieldValues.get(this)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different year'); - } - } - fieldValues.remove(this); - fieldValues.remove(this._weekDef.weekOfWeekBasedYear()); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return date; - } - - if (fieldValues.containsKey(_jsJoda.ChronoField.YEAR) === false) { - return null; - } - var isoDow = _jsJoda.ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.DAY_OF_WEEK)); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var year = _jsJoda.ChronoField.YEAR.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.YEAR)); - - if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - if (fieldValues.containsKey(_jsJoda.ChronoField.MONTH_OF_YEAR) === false) { - return null; - } - var _value = fieldValues.remove(this); - var _date = void 0; - var _days = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - var month = fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR); - _date = _jsJoda.LocalDate.of(year, 1, 1); - _date = _date.plus(month - 1, _jsJoda.ChronoUnit.MONTHS); - var _dateDow2 = this._localizedDayOfWeek(_date, sow); - var _weeks2 = _value - this._localizedWeekOfMonth(_date, _dateDow2); - _days = _weeks2 * 7 + (dow - _dateDow2); - } else { - var _month = _jsJoda.ChronoField.MONTH_OF_YEAR.checkValidIntValue(fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR)); - _date = _jsJoda.LocalDate.of(year, _month, 8); - var _dateDow3 = this._localizedDayOfWeek(_date, sow); - var wom = this._range.checkValidIntValue(_value, this); - var _weeks3 = wom - this._localizedWeekOfMonth(_date, _dateDow3); - _days = _weeks3 * 7 + (dow - _dateDow3); - } - _date = _date.plus(_days, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (_date.getLong(_jsJoda.ChronoField.MONTH_OF_YEAR) !== fieldValues.get(_jsJoda.ChronoField.MONTH_OF_YEAR)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different month'); - } - } - fieldValues.remove(this); - fieldValues.remove(_jsJoda.ChronoField.YEAR); - fieldValues.remove(_jsJoda.ChronoField.MONTH_OF_YEAR); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return _date; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - var _value2 = fieldValues.remove(this); - var _date2 = _jsJoda.LocalDate.of(year, 1, 1); - var _days2 = void 0; - if (resolverStyle === _jsJoda.ResolverStyle.LENIENT) { - var _dateDow4 = this._localizedDayOfWeek(_date2, sow); - var _weeks4 = _value2 - this._localizedWeekOfYear(_date2, _dateDow4); - _days2 = _weeks4 * 7 + (dow - _dateDow4); - } else { - var _dateDow5 = this._localizedDayOfWeek(_date2, sow); - var woy = this._range.checkValidIntValue(_value2, this); - var _weeks5 = woy - this._localizedWeekOfYear(_date2, _dateDow5); - _days2 = _weeks5 * 7 + (dow - _dateDow5); - } - _date2 = _date2.plus(_days2, _jsJoda.ChronoUnit.DAYS); - if (resolverStyle === _jsJoda.ResolverStyle.STRICT) { - if (_date2.getLong(_jsJoda.ChronoField.YEAR) !== fieldValues.get(_jsJoda.ChronoField.YEAR)) { - throw new _jsJoda.DateTimeException('Strict mode rejected date parsed to a different year'); - } - } - fieldValues.remove(this); - fieldValues.remove(_jsJoda.ChronoField.YEAR); - fieldValues.remove(_jsJoda.ChronoField.DAY_OF_WEEK); - return _date2; - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - } - }, { - key: 'name', - value: function name() { - return this._name; - } - }, { - key: 'baseUnit', - value: function baseUnit() { - return this._baseUnit; - } - }, { - key: 'rangeUnit', - value: function rangeUnit() { - return this._rangeUnit; - } - }, { - key: 'range', - value: function range() { - return this._range; - } - }, { - key: 'isDateBased', - value: function isDateBased() { - return true; - } - }, { - key: 'isTimeBased', - value: function isTimeBased() { - return false; - } - }, { - key: 'isSupportedBy', - value: function isSupportedBy(temporal) { - if (temporal.isSupported(_jsJoda.ChronoField.DAY_OF_WEEK)) { - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return true; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - return temporal.isSupported(_jsJoda.ChronoField.DAY_OF_MONTH); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return temporal.isSupported(_jsJoda.ChronoField.DAY_OF_YEAR); - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return temporal.isSupported(_jsJoda.ChronoField.EPOCH_DAY); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return temporal.isSupported(_jsJoda.ChronoField.EPOCH_DAY); - } - } - return false; - } - }, { - key: 'rangeRefinedBy', - value: function rangeRefinedBy(temporal) { - if (this._rangeUnit === _jsJoda.ChronoUnit.WEEKS) { - return this._range; - } - - var field = null; - if (this._rangeUnit === _jsJoda.ChronoUnit.MONTHS) { - field = _jsJoda.ChronoField.DAY_OF_MONTH; - } else if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - field = _jsJoda.ChronoField.DAY_OF_YEAR; - } else if (this._rangeUnit === _jsJoda.IsoFields.WEEK_BASED_YEARS) { - return this._rangeWOWBY(temporal); - } else if (this._rangeUnit === _jsJoda.ChronoUnit.FOREVER) { - return temporal.range(_jsJoda.ChronoField.YEAR); - } else { - throw new _jsJoda.IllegalStateException('unreachable'); - } - - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - - var offset = this._startOfWeekOffset(temporal.get(field), dow); - var fieldRange = temporal.range(field); - return _jsJoda.ValueRange.of(ComputedDayOfField._computeWeek(offset, fieldRange.minimum()), ComputedDayOfField._computeWeek(offset, fieldRange.maximum())); - } - }, { - key: '_rangeWOWBY', - value: function _rangeWOWBY(temporal) { - var sow = this._weekDef.firstDayOfWeek().value(); - var isoDow = temporal.get(_jsJoda.ChronoField.DAY_OF_WEEK); - var dow = MathUtil.floorMod(isoDow - sow, 7) + 1; - var woy = this._localizedWeekOfYear(temporal, dow); - if (woy === 0) { - return this._rangeWOWBY(_jsJoda.IsoChronology.INSTANCE.date(temporal).minus(2, _jsJoda.ChronoUnit.WEEKS)); - } - var offset = this._startOfWeekOffset(temporal.get(_jsJoda.ChronoField.DAY_OF_YEAR), dow); - var year = temporal.get(_jsJoda.ChronoField.YEAR); - var yearLen = _jsJoda.Year.isLeap(year) ? 366 : 365; - var weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek()); - if (woy >= weekIndexOfFirstWeekNextYear) { - return this._rangeWOWBY(_jsJoda.IsoChronology.INSTANCE.date(temporal).plus(2, _jsJoda.ChronoUnit.WEEKS)); - } - return _jsJoda.ValueRange.of(1, weekIndexOfFirstWeekNextYear - 1); - } - }, { - key: 'getDisplayName', - value: function getDisplayName(locale) { - requireNonNull(locale, 'locale'); - if (this._rangeUnit === _jsJoda.ChronoUnit.YEARS) { - return 'Week'; - } - return this.toString(); - } - }, { - key: 'toString', - value: function toString() { - return this._name + '[' + this._weekDef.toString() + ']'; - } - }], [{ - key: '_computeWeek', - value: function _computeWeek(offset, day) { - return MathUtil.intDiv(7 + offset + (day - 1), 7); - } - }]); - - return ComputedDayOfField; -}(); - -var WeekFieldsCache = new Map(); - -var WeekFields = exports.WeekFields = function () { - _createClass(WeekFields, null, [{ - key: 'of', - value: function of(firstDayOrLocale, minDays) { - if (minDays === undefined) { - return WeekFields.ofLocale(firstDayOrLocale); - } else { - return WeekFields.ofFirstDayOfWeekMinDays(firstDayOrLocale, minDays); - } - } - }, { - key: 'ofLocale', - value: function ofLocale(locale) { - requireNonNull(locale, 'locale'); - - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/weekData.json')); - var cldr = new _cldrjs2.default(locale.localeString()); - var worldRegion = '001'; - var weekData = cldr.get('supplemental/weekData'); - var dow = _weekDayMap[weekData.firstDay[locale.country()]]; - if (!dow) { - dow = _weekDayMap[weekData.firstDay[worldRegion]]; - } - var minDays = weekData.minDays[locale.country()]; - if (!minDays) { - minDays = weekData.minDays[worldRegion]; - } - return WeekFields.ofFirstDayOfWeekMinDays(dow, minDays); - } - }, { - key: 'ofFirstDayOfWeekMinDays', - value: function ofFirstDayOfWeekMinDays(firstDayOfWeek, minimalDaysInFirstWeek) { - requireNonNull(firstDayOfWeek, 'firstDayOfWeek'); - requireInstance(firstDayOfWeek, _jsJoda.DayOfWeek, 'firstDayOfWeek'); - requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek'); - var key = firstDayOfWeek.toString() + minimalDaysInFirstWeek; - var rules = WeekFieldsCache.get(key); - if (rules == null) { - rules = new WeekFields(firstDayOfWeek, minimalDaysInFirstWeek); - WeekFieldsCache.set(key, rules); - rules = WeekFieldsCache.get(key); - } - return rules; - } - }]); - - function WeekFields(firstDayOfWeek, minimalDaysInFirstWeek) { - _classCallCheck(this, WeekFields); - - requireNonNull(firstDayOfWeek, 'firstDayOfWeek'); - requireInstance(firstDayOfWeek, _jsJoda.DayOfWeek, 'firstDayOfWeek'); - requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek'); - if (minimalDaysInFirstWeek < 1 || minimalDaysInFirstWeek > 7) { - throw new _jsJoda.IllegalArgumentException('Minimal number of days is invalid'); - } - this._firstDayOfWeek = firstDayOfWeek; - this._minimalDays = minimalDaysInFirstWeek; - this._dayOfWeek = ComputedDayOfField.ofDayOfWeekField(this); - this._weekOfMonth = ComputedDayOfField.ofWeekOfMonthField(this); - this._weekOfYear = ComputedDayOfField.ofWeekOfYearField(this); - this._weekOfWeekBasedYear = ComputedDayOfField.ofWeekOfWeekBasedYearField(this); - this._weekBasedYear = ComputedDayOfField.ofWeekBasedYearField(this); - _cldrjs2.default.load((0, _cldrData2.default)('supplemental/likelySubtags.json')); - } - - _createClass(WeekFields, [{ - key: 'firstDayOfWeek', - value: function firstDayOfWeek() { - return this._firstDayOfWeek; - } - }, { - key: 'minimalDaysInFirstWeek', - value: function minimalDaysInFirstWeek() { - return this._minimalDays; - } - }, { - key: 'dayOfWeek', - value: function dayOfWeek() { - return this._dayOfWeek; - } - }, { - key: 'weekOfMonth', - value: function weekOfMonth() { - return this._weekOfMonth; - } - }, { - key: 'weekOfYear', - value: function weekOfYear() { - return this._weekOfYear; - } - }, { - key: 'weekOfWeekBasedYear', - value: function weekOfWeekBasedYear() { - return this._weekOfWeekBasedYear; - } - }, { - key: 'weekBasedYear', - value: function weekBasedYear() { - return this._weekBasedYear; - } - }, { - key: 'equals', - value: function equals(object) { - if (this === object) { - return true; - } - if (object instanceof WeekFields) { - return this.hashCode() === object.hashCode(); - } - return false; - } - }, { - key: 'hashCode', - value: function hashCode() { - return this._firstDayOfWeek.ordinal() * 7 + this._minimalDays; - } - }, { - key: 'toString', - value: function toString() { - return 'WeekFields[' + this._firstDayOfWeek + ',' + this._minimalDays + ']'; - } - }]); - - return WeekFields; -}(); - -function _init() { - WeekFields.ISO = WeekFields.of(_jsJoda.DayOfWeek.MONDAY, 4); - - WeekFields.SUNDAY_START = WeekFields.of(_jsJoda.DayOfWeek.SUNDAY, 1); -} - -/***/ }), - -/***/ "./utils/load_cldrData.prebuilt.js": -/*!*****************************************!*\ - !*** ./utils/load_cldrData.prebuilt.js ***! - \*****************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -/* - * @copyright (c) 2018, Philipp Thuerwaechter & Pattrick Hueper - * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree) - */ - -/* since the npm cldrData load is using `fs` and other modules not available in browser, - * we define our own cldrData "load" function that just `requires` a cldr-data file - */ - -/* NOTE: the path is relative to the installed js-joda-locale package and assuming, - * that cldr-data is installed in parallel! - */ -module.exports = function (cldrPath) { - return __webpack_require__("./node_modules/cldr-data sync recursive ^\\.\\/.*$")("./" + cldrPath); -}; - - -/***/ }), - -/***/ "js-joda": -/*!*********************************************************************************************!*\ - !*** external {"amd":"js-joda","commonjs":"js-joda","commonjs2":"js-joda","root":"JSJoda"} ***! - \*********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports) { - -module.exports = __WEBPACK_EXTERNAL_MODULE_js_joda__; - -/***/ }) - -/******/ }); -}); \ No newline at end of file diff --git a/packages/itIT/dist/index.js.map b/packages/itIT/dist/index.js.map deleted file mode 100644 index c810aa3..0000000 --- a/packages/itIT/dist/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack://JSJodaLocale/webpack/universalModuleDefinition","webpack://JSJodaLocale/webpack/bootstrap","webpack://JSJodaLocale/./node_modules/cldr-data sync ^\\.\\/.*$","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/event.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/supplemental.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/cldr/unresolved.js","webpack://JSJodaLocale/./node_modules/cldrjs/dist/node_main.js","webpack://JSJodaLocale/./src/Locale.js","webpack://JSJodaLocale/./src/_init.js","webpack://JSJodaLocale/./src/format/LocaleDateTimeFormatter.js","webpack://JSJodaLocale/./src/format/LocaleStore.js","webpack://JSJodaLocale/./src/format/cldr/CldrDateTimeFormatterBuilder.js","webpack://JSJodaLocale/./src/format/cldr/CldrDateTimeTextProvider.js","webpack://JSJodaLocale/./src/format/cldr/CldrZoneTextPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/LocalizedOffsetPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/TextPrinterParser.js","webpack://JSJodaLocale/./src/format/parser/WeekFieldsPrinterParser.js","webpack://JSJodaLocale/./src/js-joda-locale.js","webpack://JSJodaLocale/./src/plug.js","webpack://JSJodaLocale/./src/temporal/WeekFields.js","webpack://JSJodaLocale/./utils/load_cldrData.prebuilt.js","webpack://JSJodaLocale/external {\"amd\":\"js-joda\",\"commonjs\":\"js-joda\",\"commonjs2\":\"js-joda\",\"root\":\"JSJoda\"}"],"names":["_init","Locale","getAvailableLocales","language","country","localeString","_language","_country","_localeString","length","other","ENGLISH","US","UK","CANADA","FRENCH","FRANCE","GERMAN","GERMANY","isInit","init","requireNonNull","assert","LocaleDateTimeFormatter","locale","equals","_locale","_printerParser","_decimalStyle","_resolverStyle","_resolverFields","_chrono","_zone","createEntry","text","field","key","value","toString","_comparator","obj1","obj2","LocaleStore","valueTextMap","_valueTextMap","map","allList","Object","keys","forEach","style","reverse","undefined","Number","parseInt","list","values","sort","concat","_parsable","Symbol","iterator","requireInstance","CldrDateTimeFormatterBuilder","styleOrMap","appendTextField","appendTextFieldStyle","appendTextFieldMap","FULL","textStyle","_appendInternal","textLookup","copy","assign","store","provider","getText","getTextIterator","count","SHORT","CldrDateTimeTextProvider","_cache","load","availableLocales","_findStore","_createStore","cldr","MONTH_OF_YEAR","monthsData","main","styleMap","data","wide","narrow","NARROW","abbreviated","_createLocaleStore","DAY_OF_WEEK","daysData","mon","tue","wed","thu","fri","sat","sun","AMPM_OF_DAY","dayPeriodsData","am","pm","ERA","erasData","eraNames","eraNarrow","eraAbbr","QUARTER_OF_YEAR","quartersData","FULL_STANDALONE","SHORT_STANDALONE","includes","NARROW_STANDALONE","LENGTH_COMPARATOR","str1","str2","cmp","localeCompare","CldrZoneTextPrinterParser","_textStyle","zoneId","type","mapZones","zoneData","metazoneInfo","get","metazone","metaZoneData","preferredZone","attributes","territory","_resolveZoneIdText","goldenZone","context","buf","zone","getValueQuery","normalized","append","id","daylight","hasDaylightSupport","tzType","tzstyle","asNormal","metaZone","mapZone","_other","_territory","_type","position","ids","getAvailableZoneIds","genericText","standardText","daylightText","sortedKeys","name","subSequenceEquals","setParsedZone","of","MathUtil","LocalizedOffsetPrinterParser","offsetSecs","getValue","OFFSET_SECONDS","OffsetIdPrinterParser","print","totalSecs","safeToInt","absHours","Math","abs","intMod","intDiv","absMinutes","absSeconds","parse","end","setParsedField","sign","charAt","negative","ch","hour","offset","min","sec","TextPrinterParser","_field","_provider","_numberPrinterParser","parseText","isStrict","it","entry","itText","_currentNumberPrinterParser","NumberPrinterParser","NORMAL","StringBuilder","WeekFieldsPrinterParser","letter","_letter","_count","weekFields","pp","_evaluate","dayOfWeek","NOT_NEGATIVE","weekOfWeekBasedYear","weekOfMonth","ReducedPrinterParser","weekBasedYear","BASE_DATE","EXCEEDS_PAD","sb","jsJoda","getOwnPropertyNames","prototype","prop","DateTimeFormatterBuilder","DateTimeFormatter","DAY_OF_WEEK_RANGE","WEEK_OF_MONTH_RANGE","WEEK_OF_YEAR_RANGE","WEEK_OF_WEEK_BASED_YEAR_RANGE","WEEK_BASED_YEAR_RANGE","YEAR","range","_weekDayMap","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY","ComputedDayOfField","weekDef","DAYS","WEEKS","MONTHS","YEARS","WEEK_BASED_YEARS","FOREVER","baseUnit","rangeUnit","_name","_weekDef","_baseUnit","_rangeUnit","_range","temporal","sow","firstDayOfWeek","dow","_localizedDayOfWeek","_localizedWeekOfMonth","_localizedWeekOfYear","_localizedWOWBY","_localizedWBY","isoDow","floorMod","dom","DAY_OF_MONTH","_startOfWeekOffset","_computeWeek","doy","DAY_OF_YEAR","woy","previous","from","minus","year","yearLen","isLeap","weekIndexOfFirstWeekNextYear","minimalDaysInFirstWeek","day","weekStart","newValue","newVal","checkValidIntValue","currentVal","baseWowby","diffWeeks","roundDown","result","plus","newWowby","delta","fieldValues","partialTemporal","resolverStyle","remove","localDow","put","containsKey","wby","date","days","LENIENT","wowby","dateDow","weeks","STRICT","getLong","month","wom","isSupported","EPOCH_DAY","_rangeWOWBY","fieldRange","minimum","maximum","INSTANCE","WeekFieldsCache","Map","WeekFields","firstDayOrLocale","minDays","ofLocale","ofFirstDayOfWeekMinDays","worldRegion","weekData","firstDay","rules","set","_firstDayOfWeek","_minimalDays","_dayOfWeek","ofDayOfWeekField","_weekOfMonth","ofWeekOfMonthField","_weekOfYear","ofWeekOfYearField","_weekOfWeekBasedYear","ofWeekOfWeekBasedYearField","_weekBasedYear","ofWeekBasedYearField","object","hashCode","ordinal","ISO","SUNDAY_START"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;ACVA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;;AAGA;AACA;;;;;;;;;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;;AAGD;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;;AAE9B,cAAc,UAAU;AACxB,yBAAyB,UAAU;AACnC,2BAA2B,IAAI,IAAI;AACnC;AACA,GAAG;;AAEH;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,qCAAqC,YAAY;AACjD;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,+CAA+C;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,IAAI,kBAAkB,IAAI;AACxE,2CAA2C,IAAI,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,oBAAoB,IAAI,kBAAkB,EAAE;AACnI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,qCAAqC,YAAY;AACjD;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA,GAAG;AACH;;;;;AAKA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;AAEA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2G,OAAO;AAClH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA,YAAY,KAAK,aAAa,EAAE,GAAG,KAAK,aAAa,EAAE;AACvD,QAAQ,KAAK,mBAAmB;AAChC;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA,CAAC;;;AAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,qDAAqD,IAAI,GAAG,IAAI;AAChE,cAAc,kBAAkB;;AAEhC,mDAAmD,IAAI,GAAG,IAAI;AAC9D;;AAEA,eAAe,iBAAiB;AAChC;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,2DAA2D,cAAc;AACzE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gFAAgF,IAAI,SAAS,EAAE,SAAS,IAAI;;AAE5G;;AAEA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA,4BAA4B,OAAO;AACnC;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACzqBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,YAAY,WAAW;AACvB,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,kBAAkB;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,SAAS;AACrB,aAAa,WAAW;AACxB;AACA;AACA;AACA;;AAEA,aAAa,sBAAsB;AACnC;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,OAAO;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,SAAS;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB,YAAY,qBAAqB;AACjC,YAAY,WAAW;AACvB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,MAAM;AAClB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B,YAAY,KAAK;AACjB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY,EAAE;AACd,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA,2CAA2C;AAC3C;;AAEA;AACA,wBAAwB,mBAAmB;AAC3C;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC;AACD;;;;AAIA;AACA;AACA;;;;;AAKA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACxkBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;;;;AAIA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,qDAAqD,UAAU;AAC/D;AACA;;AAEA;AACA,2DAA2D,UAAU;AACrE;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,4CAA4C,UAAU;AACtD;AACA;;AAEA;AACA,4CAA4C,UAAU;AACtD;AACA;;AAEA;;AAEA;;;;;AAKA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACpGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA,EAAE,QAMF;;AAEA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA;AACA;AACA;AACA;;AAEA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,+DAA+D,iBAAiB;AAChF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,CAAC;;;AAGD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;;;;AAKA,CAAC;;;;;;;;;;;;ACnKD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"js-joda\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"js-joda\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"JSJodaLocale\"] = factory(require(\"js-joda\"));\n\telse\n\t\troot[\"JSJodaLocale\"] = factory(root[\"JSJoda\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_js_joda__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/js-joda-locale.js\");\n","var map = {\n\t\"./availableLocales.json\": \"./node_modules/cldr-data/availableLocales.json\",\n\t\"./main/it/ca-gregorian.json\": \"./node_modules/cldr-data/main/it/ca-gregorian.json\",\n\t\"./main/it/timeZoneNames.json\": \"./node_modules/cldr-data/main/it/timeZoneNames.json\",\n\t\"./supplemental/likelySubtags.json\": \"./node_modules/cldr-data/supplemental/likelySubtags.json\",\n\t\"./supplemental/metaZones.json\": \"./node_modules/cldr-data/supplemental/metaZones.json\",\n\t\"./supplemental/weekData.json\": \"./node_modules/cldr-data/supplemental/weekData.json\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\tvar module = __webpack_require__(id);\n\treturn module;\n}\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) { // check for number or string\n\t\tvar e = new Error('Cannot find module \"' + req + '\".');\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn id;\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/cldr-data sync recursive ^\\\\.\\\\/.*$\";","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( root, factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory();\n\t} else {\n\t\t// Global\n\t\troot.Cldr = factory();\n\t}\n\n}( this, function() {\n\n\n\tvar arrayIsArray = Array.isArray || function( obj ) {\n\t\treturn Object.prototype.toString.call( obj ) === \"[object Array]\";\n\t};\n\n\n\n\n\tvar pathNormalize = function( path, attributes ) {\n\t\tif ( arrayIsArray( path ) ) {\n\t\t\tpath = path.join( \"/\" );\n\t\t}\n\t\tif ( typeof path !== \"string\" ) {\n\t\t\tthrow new Error( \"invalid path \\\"\" + path + \"\\\"\" );\n\t\t}\n\t\t// 1: Ignore leading slash `/`\n\t\t// 2: Ignore leading `cldr/`\n\t\tpath = path\n\t\t\t.replace( /^\\// , \"\" ) /* 1 */\n\t\t\t.replace( /^cldr\\// , \"\" ); /* 2 */\n\n\t\t// Replace {attribute}'s\n\t\tpath = path.replace( /{[a-zA-Z]+}/g, function( name ) {\n\t\t\tname = name.replace( /^{([^}]*)}$/, \"$1\" );\n\t\t\treturn attributes[ name ];\n\t\t});\n\n\t\treturn path.split( \"/\" );\n\t};\n\n\n\n\n\tvar arraySome = function( array, callback ) {\n\t\tvar i, length;\n\t\tif ( array.some ) {\n\t\t\treturn array.some( callback );\n\t\t}\n\t\tfor ( i = 0, length = array.length; i < length; i++ ) {\n\t\t\tif ( callback( array[ i ], i, array ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\n\n\n\t/**\n\t * Return the maximized language id as defined in\n\t * http://www.unicode.org/reports/tr35/#Likely_Subtags\n\t * 1. Canonicalize.\n\t * 1.1 Make sure the input locale is in canonical form: uses the right\n\t * separator, and has the right casing.\n\t * TODO Right casing? What df? It seems languages are lowercase, scripts are\n\t * Capitalized, territory is uppercase. I am leaving this as an exercise to\n\t * the user.\n\t *\n\t * 1.2 Replace any deprecated subtags with their canonical values using the\n\t * data in supplemental metadata. Use the first value in the\n\t * replacement list, if it exists. Language tag replacements may have multiple\n\t * parts, such as \"sh\" ➞ \"sr_Latn\" or mo\" ➞ \"ro_MD\". In such a case, the\n\t * original script and/or region are retained if there is one. Thus\n\t * \"sh_Arab_AQ\" ➞ \"sr_Arab_AQ\", not \"sr_Latn_AQ\".\n\t * TODO What data?\n\t *\n\t * 1.3 If the tag is grandfathered (see in the supplemental data), then return it.\n\t * TODO grandfathered?\n\t *\n\t * 1.4 Remove the script code 'Zzzz' and the region code 'ZZ' if they occur.\n\t * 1.5 Get the components of the cleaned-up source tag (languages, scripts,\n\t * and regions), plus any variants and extensions.\n\t * 2. Lookup. Lookup each of the following in order, and stop on the first\n\t * match:\n\t * 2.1 languages_scripts_regions\n\t * 2.2 languages_regions\n\t * 2.3 languages_scripts\n\t * 2.4 languages\n\t * 2.5 und_scripts\n\t * 3. Return\n\t * 3.1 If there is no match, either return an error value, or the match for\n\t * \"und\" (in APIs where a valid language tag is required).\n\t * 3.2 Otherwise there is a match = languagem_scriptm_regionm\n\t * 3.3 Let xr = xs if xs is not empty, and xm otherwise.\n\t * 3.4 Return the language tag composed of languager _ scriptr _ regionr +\n\t * variants + extensions.\n\t *\n\t * @subtags [Array] normalized language id subtags tuple (see init.js).\n\t */\n\tvar coreLikelySubtags = function( Cldr, cldr, subtags, options ) {\n\t\tvar match, matchFound,\n\t\t\tlanguage = subtags[ 0 ],\n\t\t\tscript = subtags[ 1 ],\n\t\t\tsep = Cldr.localeSep,\n\t\t\tterritory = subtags[ 2 ],\n\t\t\tvariants = subtags.slice( 3, 4 );\n\t\toptions = options || {};\n\n\t\t// Skip if (language, script, territory) is not empty [3.3]\n\t\tif ( language !== \"und\" && script !== \"Zzzz\" && territory !== \"ZZ\" ) {\n\t\t\treturn [ language, script, territory ].concat( variants );\n\t\t}\n\n\t\t// Skip if no supplemental likelySubtags data is present\n\t\tif ( typeof cldr.get( \"supplemental/likelySubtags\" ) === \"undefined\" ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// [2]\n\t\tmatchFound = arraySome([\n\t\t\t[ language, script, territory ],\n\t\t\t[ language, territory ],\n\t\t\t[ language, script ],\n\t\t\t[ language ],\n\t\t\t[ \"und\", script ]\n\t\t], function( test ) {\n\t\t\treturn match = !(/\\b(Zzzz|ZZ)\\b/).test( test.join( sep ) ) /* [1.4] */ && cldr.get( [ \"supplemental/likelySubtags\", test.join( sep ) ] );\n\t\t});\n\n\t\t// [3]\n\t\tif ( matchFound ) {\n\t\t\t// [3.2 .. 3.4]\n\t\t\tmatch = match.split( sep );\n\t\t\treturn [\n\t\t\t\tlanguage !== \"und\" ? language : match[ 0 ],\n\t\t\t\tscript !== \"Zzzz\" ? script : match[ 1 ],\n\t\t\t\tterritory !== \"ZZ\" ? territory : match[ 2 ]\n\t\t\t].concat( variants );\n\t\t} else if ( options.force ) {\n\t\t\t// [3.1.2]\n\t\t\treturn cldr.get( \"supplemental/likelySubtags/und\" ).split( sep );\n\t\t} else {\n\t\t\t// [3.1.1]\n\t\t\treturn;\n\t\t}\n\t};\n\n\n\n\t/**\n\t * Given a locale, remove any fields that Add Likely Subtags would add.\n\t * http://www.unicode.org/reports/tr35/#Likely_Subtags\n\t * 1. First get max = AddLikelySubtags(inputLocale). If an error is signaled,\n\t * return it.\n\t * 2. Remove the variants from max.\n\t * 3. Then for trial in {language, language _ region, language _ script}. If\n\t * AddLikelySubtags(trial) = max, then return trial + variants.\n\t * 4. If you do not get a match, return max + variants.\n\t * \n\t * @maxLanguageId [Array] maxLanguageId tuple (see init.js).\n\t */\n\tvar coreRemoveLikelySubtags = function( Cldr, cldr, maxLanguageId ) {\n\t\tvar match, matchFound,\n\t\t\tlanguage = maxLanguageId[ 0 ],\n\t\t\tscript = maxLanguageId[ 1 ],\n\t\t\tterritory = maxLanguageId[ 2 ],\n\t\t\tvariants = maxLanguageId[ 3 ];\n\n\t\t// [3]\n\t\tmatchFound = arraySome([\n\t\t\t[ [ language, \"Zzzz\", \"ZZ\" ], [ language ] ],\n\t\t\t[ [ language, \"Zzzz\", territory ], [ language, territory ] ],\n\t\t\t[ [ language, script, \"ZZ\" ], [ language, script ] ]\n\t\t], function( test ) {\n\t\t\tvar result = coreLikelySubtags( Cldr, cldr, test[ 0 ] );\n\t\t\tmatch = test[ 1 ];\n\t\t\treturn result && result[ 0 ] === maxLanguageId[ 0 ] &&\n\t\t\t\tresult[ 1 ] === maxLanguageId[ 1 ] &&\n\t\t\t\tresult[ 2 ] === maxLanguageId[ 2 ];\n\t\t});\n\n\t\tif ( matchFound ) {\n\t\t\tif ( variants ) {\n\t\t\t\tmatch.push( variants );\n\t\t\t}\n\t\t\treturn match;\n\t\t}\n\n\t\t// [4]\n\t\treturn maxLanguageId;\n\t};\n\n\n\n\n\t/**\n\t * subtags( locale )\n\t *\n\t * @locale [String]\n\t */\n\tvar coreSubtags = function( locale ) {\n\t\tvar aux, unicodeLanguageId,\n\t\t\tsubtags = [];\n\n\t\tlocale = locale.replace( /_/, \"-\" );\n\n\t\t// Unicode locale extensions.\n\t\taux = locale.split( \"-u-\" );\n\t\tif ( aux[ 1 ] ) {\n\t\t\taux[ 1 ] = aux[ 1 ].split( \"-t-\" );\n\t\t\tlocale = aux[ 0 ] + ( aux[ 1 ][ 1 ] ? \"-t-\" + aux[ 1 ][ 1 ] : \"\");\n\t\t\tsubtags[ 4 /* unicodeLocaleExtensions */ ] = aux[ 1 ][ 0 ];\n\t\t}\n\n\t\t// TODO normalize transformed extensions. Currently, skipped.\n\t\t// subtags[ x ] = locale.split( \"-t-\" )[ 1 ];\n\t\tunicodeLanguageId = locale.split( \"-t-\" )[ 0 ];\n\n\t\t// unicode_language_id = \"root\"\n\t\t// | unicode_language_subtag \n\t\t// (sep unicode_script_subtag)? \n\t\t// (sep unicode_region_subtag)?\n\t\t// (sep unicode_variant_subtag)* ;\n\t\t//\n\t\t// Although unicode_language_subtag = alpha{2,8}, I'm using alpha{2,3}. Because, there's no language on CLDR lengthier than 3.\n\t\taux = unicodeLanguageId.match( /^(([a-z]{2,3})(-([A-Z][a-z]{3}))?(-([A-Z]{2}|[0-9]{3}))?)((-([a-zA-Z0-9]{5,8}|[0-9][a-zA-Z0-9]{3}))*)$|^(root)$/ );\n\t\tif ( aux === null ) {\n\t\t\treturn [ \"und\", \"Zzzz\", \"ZZ\" ];\n\t\t}\n\t\tsubtags[ 0 /* language */ ] = aux[ 10 ] /* root */ || aux[ 2 ] || \"und\";\n\t\tsubtags[ 1 /* script */ ] = aux[ 4 ] || \"Zzzz\";\n\t\tsubtags[ 2 /* territory */ ] = aux[ 6 ] || \"ZZ\";\n\t\tif ( aux[ 7 ] && aux[ 7 ].length ) {\n\t\t\tsubtags[ 3 /* variant */ ] = aux[ 7 ].slice( 1 ) /* remove leading \"-\" */;\n\t\t}\n\n\t\t// 0: language\n\t\t// 1: script\n\t\t// 2: territory (aka region)\n\t\t// 3: variant\n\t\t// 4: unicodeLocaleExtensions\n\t\treturn subtags;\n\t};\n\n\n\n\n\tvar arrayForEach = function( array, callback ) {\n\t\tvar i, length;\n\t\tif ( array.forEach ) {\n\t\t\treturn array.forEach( callback );\n\t\t}\n\t\tfor ( i = 0, length = array.length; i < length; i++ ) {\n\t\t\tcallback( array[ i ], i, array );\n\t\t}\n\t};\n\n\n\n\n\t/**\n\t * bundleLookup( minLanguageId )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @cldr [Cldr instance]\n\t *\n\t * @minLanguageId [String] requested languageId after applied remove likely subtags.\n\t */\n\tvar bundleLookup = function( Cldr, cldr, minLanguageId ) {\n\t\tvar availableBundleMap = Cldr._availableBundleMap,\n\t\t\tavailableBundleMapQueue = Cldr._availableBundleMapQueue;\n\n\t\tif ( availableBundleMapQueue.length ) {\n\t\t\tarrayForEach( availableBundleMapQueue, function( bundle ) {\n\t\t\t\tvar existing, maxBundle, minBundle, subtags;\n\t\t\t\tsubtags = coreSubtags( bundle );\n\t\t\t\tmaxBundle = coreLikelySubtags( Cldr, cldr, subtags );\n\t\t\t\tminBundle = coreRemoveLikelySubtags( Cldr, cldr, maxBundle );\n\t\t\t\tminBundle = minBundle.join( Cldr.localeSep );\n\t\t\t\texisting = availableBundleMapQueue[ minBundle ];\n\t\t\t\tif ( existing && existing.length < bundle.length ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tavailableBundleMap[ minBundle ] = bundle;\n\t\t\t});\n\t\t\tCldr._availableBundleMapQueue = [];\n\t\t}\n\n\t\treturn availableBundleMap[ minLanguageId ] || null;\n\t};\n\n\n\n\n\tvar objectKeys = function( object ) {\n\t\tvar i,\n\t\t\tresult = [];\n\n\t\tif ( Object.keys ) {\n\t\t\treturn Object.keys( object );\n\t\t}\n\n\t\tfor ( i in object ) {\n\t\t\tresult.push( i );\n\t\t}\n\n\t\treturn result;\n\t};\n\n\n\n\n\tvar createError = function( code, attributes ) {\n\t\tvar error, message;\n\n\t\tmessage = code + ( attributes && JSON ? \": \" + JSON.stringify( attributes ) : \"\" );\n\t\terror = new Error( message );\n\t\terror.code = code;\n\n\t\t// extend( error, attributes );\n\t\tarrayForEach( objectKeys( attributes ), function( attribute ) {\n\t\t\terror[ attribute ] = attributes[ attribute ];\n\t\t});\n\n\t\treturn error;\n\t};\n\n\n\n\n\tvar validate = function( code, check, attributes ) {\n\t\tif ( !check ) {\n\t\t\tthrow createError( code, attributes );\n\t\t}\n\t};\n\n\n\n\n\tvar validatePresence = function( value, name ) {\n\t\tvalidate( \"E_MISSING_PARAMETER\", typeof value !== \"undefined\", {\n\t\t\tname: name\n\t\t});\n\t};\n\n\n\n\n\tvar validateType = function( value, name, check, expected ) {\n\t\tvalidate( \"E_INVALID_PAR_TYPE\", check, {\n\t\t\texpected: expected,\n\t\t\tname: name,\n\t\t\tvalue: value\n\t\t});\n\t};\n\n\n\n\n\tvar validateTypePath = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\" || arrayIsArray( value ), \"String or Array\" );\n\t};\n\n\n\n\n\t/**\n\t * Function inspired by jQuery Core, but reduced to our use case.\n\t */\n\tvar isPlainObject = function( obj ) {\n\t\treturn obj !== null && \"\" + obj === \"[object Object]\";\n\t};\n\n\n\n\n\tvar validateTypePlainObject = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"undefined\" || isPlainObject( value ), \"Plain Object\" );\n\t};\n\n\n\n\n\tvar validateTypeString = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\", \"a string\" );\n\t};\n\n\n\n\n\t// @path: normalized path\n\tvar resourceGet = function( data, path ) {\n\t\tvar i,\n\t\t\tnode = data,\n\t\t\tlength = path.length;\n\n\t\tfor ( i = 0; i < length - 1; i++ ) {\n\t\t\tnode = node[ path[ i ] ];\n\t\t\tif ( !node ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t}\n\t\treturn node[ path[ i ] ];\n\t};\n\n\n\n\n\t/**\n\t * setAvailableBundles( Cldr, json )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @json resolved/unresolved cldr data.\n\t *\n\t * Set available bundles queue based on passed json CLDR data. Considers a bundle as any String at /main/{bundle}.\n\t */\n\tvar coreSetAvailableBundles = function( Cldr, json ) {\n\t\tvar bundle,\n\t\t\tavailableBundleMapQueue = Cldr._availableBundleMapQueue,\n\t\t\tmain = resourceGet( json, [ \"main\" ] );\n\n\t\tif ( main ) {\n\t\t\tfor ( bundle in main ) {\n\t\t\t\tif ( main.hasOwnProperty( bundle ) && bundle !== \"root\" &&\n\t\t\t\t\t\t\tavailableBundleMapQueue.indexOf( bundle ) === -1 ) {\n\t\t\t\t\tavailableBundleMapQueue.push( bundle );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\n\n\tvar alwaysArray = function( somethingOrArray ) {\n\t\treturn arrayIsArray( somethingOrArray ) ? somethingOrArray : [ somethingOrArray ];\n\t};\n\n\n\tvar jsonMerge = (function() {\n\n\t// Returns new deeply merged JSON.\n\t//\n\t// Eg.\n\t// merge( { a: { b: 1, c: 2 } }, { a: { b: 3, d: 4 } } )\n\t// -> { a: { b: 3, c: 2, d: 4 } }\n\t//\n\t// @arguments JSON's\n\t// \n\tvar merge = function() {\n\t\tvar destination = {},\n\t\t\tsources = [].slice.call( arguments, 0 );\n\t\tarrayForEach( sources, function( source ) {\n\t\t\tvar prop;\n\t\t\tfor ( prop in source ) {\n\t\t\t\tif ( prop in destination && typeof destination[ prop ] === \"object\" && !arrayIsArray( destination[ prop ] ) ) {\n\n\t\t\t\t\t// Merge Objects\n\t\t\t\t\tdestination[ prop ] = merge( destination[ prop ], source[ prop ] );\n\n\t\t\t\t} else {\n\n\t\t\t\t\t// Set new values\n\t\t\t\t\tdestination[ prop ] = source[ prop ];\n\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\treturn destination;\n\t};\n\n\treturn merge;\n\n}());\n\n\n\t/**\n\t * load( Cldr, source, jsons )\n\t *\n\t * @Cldr [Cldr class]\n\t *\n\t * @source [Object]\n\t *\n\t * @jsons [arguments]\n\t */\n\tvar coreLoad = function( Cldr, source, jsons ) {\n\t\tvar i, j, json;\n\n\t\tvalidatePresence( jsons[ 0 ], \"json\" );\n\n\t\t// Support arbitrary parameters, e.g., `Cldr.load({...}, {...})`.\n\t\tfor ( i = 0; i < jsons.length; i++ ) {\n\n\t\t\t// Support array parameters, e.g., `Cldr.load([{...}, {...}])`.\n\t\t\tjson = alwaysArray( jsons[ i ] );\n\n\t\t\tfor ( j = 0; j < json.length; j++ ) {\n\t\t\t\tvalidateTypePlainObject( json[ j ], \"json\" );\n\t\t\t\tsource = jsonMerge( source, json[ j ] );\n\t\t\t\tcoreSetAvailableBundles( Cldr, json[ j ] );\n\t\t\t}\n\t\t}\n\n\t\treturn source;\n\t};\n\n\n\n\tvar itemGetResolved = function( Cldr, path, attributes ) {\n\t\t// Resolve path\n\t\tvar normalizedPath = pathNormalize( path, attributes );\n\n\t\treturn resourceGet( Cldr._resolved, normalizedPath );\n\t};\n\n\n\n\n\t/**\n\t * new Cldr()\n\t */\n\tvar Cldr = function( locale ) {\n\t\tthis.init( locale );\n\t};\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tCldr._alwaysArray = alwaysArray;\n\tCldr._coreLoad = coreLoad;\n\tCldr._createError = createError;\n\tCldr._itemGetResolved = itemGetResolved;\n\tCldr._jsonMerge = jsonMerge;\n\tCldr._pathNormalize = pathNormalize;\n\tCldr._resourceGet = resourceGet;\n\tCldr._validatePresence = validatePresence;\n\tCldr._validateType = validateType;\n\tCldr._validateTypePath = validateTypePath;\n\tCldr._validateTypePlainObject = validateTypePlainObject;\n\n\tCldr._availableBundleMap = {};\n\tCldr._availableBundleMapQueue = [];\n\tCldr._resolved = {};\n\n\t// Allow user to override locale separator \"-\" (default) | \"_\". According to http://www.unicode.org/reports/tr35/#Unicode_language_identifier, both \"-\" and \"_\" are valid locale separators (eg. \"en_GB\", \"en-GB\"). According to http://unicode.org/cldr/trac/ticket/6786 its usage must be consistent throughout the data set.\n\tCldr.localeSep = \"-\";\n\n\t/**\n\t * Cldr.load( json [, json, ...] )\n\t *\n\t * @json [JSON] CLDR data or [Array] Array of @json's.\n\t *\n\t * Load resolved cldr data.\n\t */\n\tCldr.load = function() {\n\t\tCldr._resolved = coreLoad( Cldr, Cldr._resolved, arguments );\n\t};\n\n\t/**\n\t * .init() automatically run on instantiation/construction.\n\t */\n\tCldr.prototype.init = function( locale ) {\n\t\tvar attributes, language, maxLanguageId, minLanguageId, script, subtags, territory, unicodeLocaleExtensions, variant,\n\t\t\tsep = Cldr.localeSep,\n\t\t\tunicodeLocaleExtensionsRaw = \"\";\n\n\t\tvalidatePresence( locale, \"locale\" );\n\t\tvalidateTypeString( locale, \"locale\" );\n\n\t\tsubtags = coreSubtags( locale );\n\n\t\tif ( subtags.length === 5 ) {\n\t\t\tunicodeLocaleExtensions = subtags.pop();\n\t\t\tunicodeLocaleExtensionsRaw = sep + \"u\" + sep + unicodeLocaleExtensions;\n\t\t\t// Remove trailing null when there is unicodeLocaleExtensions but no variants.\n\t\t\tif ( !subtags[ 3 ] ) {\n\t\t\t\tsubtags.pop();\n\t\t\t}\n\t\t}\n\t\tvariant = subtags[ 3 ];\n\n\t\t// Normalize locale code.\n\t\t// Get (or deduce) the \"triple subtags\": language, territory (also aliased as region), and script subtags.\n\t\t// Get the variant subtags (calendar, collation, currency, etc).\n\t\t// refs:\n\t\t// - http://www.unicode.org/reports/tr35/#Field_Definitions\n\t\t// - http://www.unicode.org/reports/tr35/#Language_and_Locale_IDs\n\t\t// - http://www.unicode.org/reports/tr35/#Unicode_locale_identifier\n\n\t\t// When a locale id does not specify a language, or territory (region), or script, they are obtained by Likely Subtags.\n\t\tmaxLanguageId = coreLikelySubtags( Cldr, this, subtags, { force: true } ) || subtags;\n\t\tlanguage = maxLanguageId[ 0 ];\n\t\tscript = maxLanguageId[ 1 ];\n\t\tterritory = maxLanguageId[ 2 ];\n\n\t\tminLanguageId = coreRemoveLikelySubtags( Cldr, this, maxLanguageId ).join( sep );\n\n\t\t// Set attributes\n\t\tthis.attributes = attributes = {\n\t\t\tbundle: bundleLookup( Cldr, this, minLanguageId ),\n\n\t\t\t// Unicode Language Id\n\t\t\tminLanguageId: minLanguageId + unicodeLocaleExtensionsRaw,\n\t\t\tmaxLanguageId: maxLanguageId.join( sep ) + unicodeLocaleExtensionsRaw,\n\n\t\t\t// Unicode Language Id Subtabs\n\t\t\tlanguage: language,\n\t\t\tscript: script,\n\t\t\tterritory: territory,\n\t\t\tregion: territory, /* alias */\n\t\t\tvariant: variant\n\t\t};\n\n\t\t// Unicode locale extensions.\n\t\tunicodeLocaleExtensions && ( \"-\" + unicodeLocaleExtensions ).replace( /-[a-z]{3,8}|(-[a-z]{2})-([a-z]{3,8})/g, function( attribute, key, type ) {\n\n\t\t\tif ( key ) {\n\n\t\t\t\t// Extension is in the `keyword` form.\n\t\t\t\tattributes[ \"u\" + key ] = type;\n\t\t\t} else {\n\n\t\t\t\t// Extension is in the `attribute` form.\n\t\t\t\tattributes[ \"u\" + attribute ] = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.locale = locale;\n\t};\n\n\t/**\n\t * .get()\n\t */\n\tCldr.prototype.get = function( path ) {\n\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\treturn itemGetResolved( Cldr, path, this.attributes );\n\t};\n\n\t/**\n\t * .main()\n\t */\n\tCldr.prototype.main = function( path ) {\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\tvalidate( \"E_MISSING_BUNDLE\", this.attributes.bundle !== null, {\n\t\t\tlocale: this.locale\n\t\t});\n\n\t\tpath = alwaysArray( path );\n\t\treturn this.get( [ \"main/{bundle}\" ].concat( path ) );\n\t};\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar pathNormalize = Cldr._pathNormalize,\n\t\tvalidatePresence = Cldr._validatePresence,\n\t\tvalidateType = Cldr._validateType;\n\n/*!\n * EventEmitter v4.2.7 - git.io/ee\n * Oliver Caldwell\n * MIT license\n * @preserve\n */\n\nvar EventEmitter;\n/* jshint ignore:start */\nEventEmitter = (function () {\n\n\n\t/**\n\t * Class for managing events.\n\t * Can be extended to provide event functionality in other classes.\n\t *\n\t * @class EventEmitter Manages event registering and emitting.\n\t */\n\tfunction EventEmitter() {}\n\n\t// Shortcuts to improve speed and size\n\tvar proto = EventEmitter.prototype;\n\tvar exports = {};\n\t\n\n\t/**\n\t * Finds the index of the listener for the event in it's storage array.\n\t *\n\t * @param {Function[]} listeners Array of listeners to search through.\n\t * @param {Function} listener Method to look for.\n\t * @return {Number} Index of the specified listener, -1 if not found\n\t * @api private\n\t */\n\tfunction indexOfListener(listeners, listener) {\n\t\tvar i = listeners.length;\n\t\twhile (i--) {\n\t\t\tif (listeners[i].listener === listener) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\n\t\treturn -1;\n\t}\n\n\t/**\n\t * Alias a method while keeping the context correct, to allow for overwriting of target method.\n\t *\n\t * @param {String} name The name of the target method.\n\t * @return {Function} The aliased method\n\t * @api private\n\t */\n\tfunction alias(name) {\n\t\treturn function aliasClosure() {\n\t\t\treturn this[name].apply(this, arguments);\n\t\t};\n\t}\n\n\t/**\n\t * Returns the listener array for the specified event.\n\t * Will initialise the event object and listener arrays if required.\n\t * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them.\n\t * Each property in the object response is an array of listener functions.\n\t *\n\t * @param {String|RegExp} evt Name of the event to return the listeners from.\n\t * @return {Function[]|Object} All listener functions for the event.\n\t */\n\tproto.getListeners = function getListeners(evt) {\n\t\tvar events = this._getEvents();\n\t\tvar response;\n\t\tvar key;\n\n\t\t// Return a concatenated array of all matching events if\n\t\t// the selector is a regular expression.\n\t\tif (evt instanceof RegExp) {\n\t\t\tresponse = {};\n\t\t\tfor (key in events) {\n\t\t\t\tif (events.hasOwnProperty(key) && evt.test(key)) {\n\t\t\t\t\tresponse[key] = events[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tresponse = events[evt] || (events[evt] = []);\n\t\t}\n\n\t\treturn response;\n\t};\n\n\t/**\n\t * Takes a list of listener objects and flattens it into a list of listener functions.\n\t *\n\t * @param {Object[]} listeners Raw listener objects.\n\t * @return {Function[]} Just the listener functions.\n\t */\n\tproto.flattenListeners = function flattenListeners(listeners) {\n\t\tvar flatListeners = [];\n\t\tvar i;\n\n\t\tfor (i = 0; i < listeners.length; i += 1) {\n\t\t\tflatListeners.push(listeners[i].listener);\n\t\t}\n\n\t\treturn flatListeners;\n\t};\n\n\t/**\n\t * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful.\n\t *\n\t * @param {String|RegExp} evt Name of the event to return the listeners from.\n\t * @return {Object} All listener functions for an event in an object.\n\t */\n\tproto.getListenersAsObject = function getListenersAsObject(evt) {\n\t\tvar listeners = this.getListeners(evt);\n\t\tvar response;\n\n\t\tif (listeners instanceof Array) {\n\t\t\tresponse = {};\n\t\t\tresponse[evt] = listeners;\n\t\t}\n\n\t\treturn response || listeners;\n\t};\n\n\t/**\n\t * Adds a listener function to the specified event.\n\t * The listener will not be added if it is a duplicate.\n\t * If the listener returns true then it will be removed after it is called.\n\t * If you pass a regular expression as the event name then the listener will be added to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to attach the listener to.\n\t * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addListener = function addListener(evt, listener) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar listenerIsWrapped = typeof listener === 'object';\n\t\tvar key;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) {\n\t\t\t\tlisteners[key].push(listenerIsWrapped ? listener : {\n\t\t\t\t\tlistener: listener,\n\t\t\t\t\tonce: false\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of addListener\n\t */\n\tproto.on = alias('addListener');\n\n\t/**\n\t * Semi-alias of addListener. It will add a listener that will be\n\t * automatically removed after it's first execution.\n\t *\n\t * @param {String|RegExp} evt Name of the event to attach the listener to.\n\t * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addOnceListener = function addOnceListener(evt, listener) {\n\t\treturn this.addListener(evt, {\n\t\t\tlistener: listener,\n\t\t\tonce: true\n\t\t});\n\t};\n\n\t/**\n\t * Alias of addOnceListener.\n\t */\n\tproto.once = alias('addOnceListener');\n\n\t/**\n\t * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad.\n\t * You need to tell it what event names should be matched by a regex.\n\t *\n\t * @param {String} evt Name of the event to create.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.defineEvent = function defineEvent(evt) {\n\t\tthis.getListeners(evt);\n\t\treturn this;\n\t};\n\n\t/**\n\t * Uses defineEvent to define multiple events.\n\t *\n\t * @param {String[]} evts An array of event names to define.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.defineEvents = function defineEvents(evts) {\n\t\tfor (var i = 0; i < evts.length; i += 1) {\n\t\t\tthis.defineEvent(evts[i]);\n\t\t}\n\t\treturn this;\n\t};\n\n\t/**\n\t * Removes a listener function from the specified event.\n\t * When passed a regular expression as the event name, it will remove the listener from all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to remove the listener from.\n\t * @param {Function} listener Method to remove from the event.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeListener = function removeListener(evt, listener) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar index;\n\t\tvar key;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key)) {\n\t\t\t\tindex = indexOfListener(listeners[key], listener);\n\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tlisteners[key].splice(index, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of removeListener\n\t */\n\tproto.off = alias('removeListener');\n\n\t/**\n\t * Adds listeners in bulk using the manipulateListeners method.\n\t * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added.\n\t * You can also pass it a regular expression to add the array of listeners to all events that match it.\n\t * Yeah, this function does quite a bit. That's probably a bad thing.\n\t *\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to add.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.addListeners = function addListeners(evt, listeners) {\n\t\t// Pass through to manipulateListeners\n\t\treturn this.manipulateListeners(false, evt, listeners);\n\t};\n\n\t/**\n\t * Removes listeners in bulk using the manipulateListeners method.\n\t * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n\t * You can also pass it an event name and an array of listeners to be removed.\n\t * You can also pass it a regular expression to remove the listeners from all events that match it.\n\t *\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to remove.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeListeners = function removeListeners(evt, listeners) {\n\t\t// Pass through to manipulateListeners\n\t\treturn this.manipulateListeners(true, evt, listeners);\n\t};\n\n\t/**\n\t * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level.\n\t * The first argument will determine if the listeners are removed (true) or added (false).\n\t * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n\t * You can also pass it an event name and an array of listeners to be added/removed.\n\t * You can also pass it a regular expression to manipulate the listeners of all events that match it.\n\t *\n\t * @param {Boolean} remove True if you want to remove listeners, false if you want to add.\n\t * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once.\n\t * @param {Function[]} [listeners] An optional array of listener functions to add/remove.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {\n\t\tvar i;\n\t\tvar value;\n\t\tvar single = remove ? this.removeListener : this.addListener;\n\t\tvar multiple = remove ? this.removeListeners : this.addListeners;\n\n\t\t// If evt is an object then pass each of it's properties to this method\n\t\tif (typeof evt === 'object' && !(evt instanceof RegExp)) {\n\t\t\tfor (i in evt) {\n\t\t\t\tif (evt.hasOwnProperty(i) && (value = evt[i])) {\n\t\t\t\t\t// Pass the single listener straight through to the singular method\n\t\t\t\t\tif (typeof value === 'function') {\n\t\t\t\t\t\tsingle.call(this, i, value);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t// Otherwise pass back to the multiple function\n\t\t\t\t\t\tmultiple.call(this, i, value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// So evt must be a string\n\t\t\t// And listeners must be an array of listeners\n\t\t\t// Loop over it and pass each one to the multiple method\n\t\t\ti = listeners.length;\n\t\t\twhile (i--) {\n\t\t\t\tsingle.call(this, evt, listeners[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Removes all listeners from a specified event.\n\t * If you do not specify an event then all listeners will be removed.\n\t * That means every event will be emptied.\n\t * You can also pass a regex to remove all events that match it.\n\t *\n\t * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.removeEvent = function removeEvent(evt) {\n\t\tvar type = typeof evt;\n\t\tvar events = this._getEvents();\n\t\tvar key;\n\n\t\t// Remove different things depending on the state of evt\n\t\tif (type === 'string') {\n\t\t\t// Remove all listeners for the specified event\n\t\t\tdelete events[evt];\n\t\t}\n\t\telse if (evt instanceof RegExp) {\n\t\t\t// Remove all events matching the regex.\n\t\t\tfor (key in events) {\n\t\t\t\tif (events.hasOwnProperty(key) && evt.test(key)) {\n\t\t\t\t\tdelete events[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t// Remove all listeners in all events\n\t\t\tdelete this._events;\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of removeEvent.\n\t *\n\t * Added to mirror the node API.\n\t */\n\tproto.removeAllListeners = alias('removeEvent');\n\n\t/**\n\t * Emits an event of your choice.\n\t * When emitted, every listener attached to that event will be executed.\n\t * If you pass the optional argument array then those arguments will be passed to every listener upon execution.\n\t * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately.\n\t * So they will not arrive within the array on the other side, they will be separate.\n\t * You can also pass a regular expression to emit to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n\t * @param {Array} [args] Optional array of arguments to be passed to each listener.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.emitEvent = function emitEvent(evt, args) {\n\t\tvar listeners = this.getListenersAsObject(evt);\n\t\tvar listener;\n\t\tvar i;\n\t\tvar key;\n\t\tvar response;\n\n\t\tfor (key in listeners) {\n\t\t\tif (listeners.hasOwnProperty(key)) {\n\t\t\t\ti = listeners[key].length;\n\n\t\t\t\twhile (i--) {\n\t\t\t\t\t// If the listener returns true then it shall be removed from the event\n\t\t\t\t\t// The function is executed either with a basic call or an apply if there is an args array\n\t\t\t\t\tlistener = listeners[key][i];\n\n\t\t\t\t\tif (listener.once === true) {\n\t\t\t\t\t\tthis.removeListener(evt, listener.listener);\n\t\t\t\t\t}\n\n\t\t\t\t\tresponse = listener.listener.apply(this, args || []);\n\n\t\t\t\t\tif (response === this._getOnceReturnValue()) {\n\t\t\t\t\t\tthis.removeListener(evt, listener.listener);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t};\n\n\t/**\n\t * Alias of emitEvent\n\t */\n\tproto.trigger = alias('emitEvent');\n\n\t/**\n\t * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on.\n\t * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it.\n\t *\n\t * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n\t * @param {...*} Optional additional arguments to be passed to each listener.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.emit = function emit(evt) {\n\t\tvar args = Array.prototype.slice.call(arguments, 1);\n\t\treturn this.emitEvent(evt, args);\n\t};\n\n\t/**\n\t * Sets the current value to check against when executing listeners. If a\n\t * listeners return value matches the one set here then it will be removed\n\t * after execution. This value defaults to true.\n\t *\n\t * @param {*} value The new value to check for when executing listeners.\n\t * @return {Object} Current instance of EventEmitter for chaining.\n\t */\n\tproto.setOnceReturnValue = function setOnceReturnValue(value) {\n\t\tthis._onceReturnValue = value;\n\t\treturn this;\n\t};\n\n\t/**\n\t * Fetches the current value to check against when executing listeners. If\n\t * the listeners return value matches this one then it should be removed\n\t * automatically. It will return true by default.\n\t *\n\t * @return {*|Boolean} The current value to check for or the default, true.\n\t * @api private\n\t */\n\tproto._getOnceReturnValue = function _getOnceReturnValue() {\n\t\tif (this.hasOwnProperty('_onceReturnValue')) {\n\t\t\treturn this._onceReturnValue;\n\t\t}\n\t\telse {\n\t\t\treturn true;\n\t\t}\n\t};\n\n\t/**\n\t * Fetches the events object and creates one if required.\n\t *\n\t * @return {Object} The events storage object.\n\t * @api private\n\t */\n\tproto._getEvents = function _getEvents() {\n\t\treturn this._events || (this._events = {});\n\t};\n\n\t/**\n\t * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version.\n\t *\n\t * @return {Function} Non conflicting EventEmitter class.\n\t */\n\tEventEmitter.noConflict = function noConflict() {\n\t\texports.EventEmitter = originalGlobalValue;\n\t\treturn EventEmitter;\n\t};\n\n\treturn EventEmitter;\n}());\n/* jshint ignore:end */\n\n\n\n\tvar validateTypeFunction = function( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"undefined\" || typeof value === \"function\", \"Function\" );\n\t};\n\n\n\n\n\tvar superGet, superInit,\n\t\tglobalEe = new EventEmitter();\n\n\tfunction validateTypeEvent( value, name ) {\n\t\tvalidateType( value, name, typeof value === \"string\" || value instanceof RegExp, \"String or RegExp\" );\n\t}\n\n\tfunction validateThenCall( method, self ) {\n\t\treturn function( event, listener ) {\n\t\t\tvalidatePresence( event, \"event\" );\n\t\t\tvalidateTypeEvent( event, \"event\" );\n\n\t\t\tvalidatePresence( listener, \"listener\" );\n\t\t\tvalidateTypeFunction( listener, \"listener\" );\n\n\t\t\treturn self[ method ].apply( self, arguments );\n\t\t};\n\t}\n\n\tfunction off( self ) {\n\t\treturn validateThenCall( \"off\", self );\n\t}\n\n\tfunction on( self ) {\n\t\treturn validateThenCall( \"on\", self );\n\t}\n\n\tfunction once( self ) {\n\t\treturn validateThenCall( \"once\", self );\n\t}\n\n\tCldr.off = off( globalEe );\n\tCldr.on = on( globalEe );\n\tCldr.once = once( globalEe );\n\n\t/**\n\t * Overload Cldr.prototype.init().\n\t */\n\tsuperInit = Cldr.prototype.init;\n\tCldr.prototype.init = function() {\n\t\tvar ee;\n\t\tthis.ee = ee = new EventEmitter();\n\t\tthis.off = off( ee );\n\t\tthis.on = on( ee );\n\t\tthis.once = once( ee );\n\t\tsuperInit.apply( this, arguments );\n\t};\n\n\t/**\n\t * getOverload is encapsulated, because of cldr/unresolved. If it's loaded\n\t * after cldr/event (and note it overwrites .get), it can trigger this\n\t * overload again.\n\t */\n\tfunction getOverload() {\n\n\t\t/**\n\t\t * Overload Cldr.prototype.get().\n\t\t */\n\t\tsuperGet = Cldr.prototype.get;\n\t\tCldr.prototype.get = function( path ) {\n\t\t\tvar value = superGet.apply( this, arguments );\n\t\t\tpath = pathNormalize( path, this.attributes ).join( \"/\" );\n\t\t\tglobalEe.trigger( \"get\", [ path, value ] );\n\t\t\tthis.ee.trigger( \"get\", [ path, value ] );\n\t\t\treturn value;\n\t\t};\n\t}\n\n\tCldr._eventInit = getOverload;\n\tgetOverload();\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar alwaysArray = Cldr._alwaysArray;\n\n\n\n\tvar supplementalMain = function( cldr ) {\n\n\t\tvar prepend, supplemental;\n\t\t\n\t\tprepend = function( prepend ) {\n\t\t\treturn function( path ) {\n\t\t\t\tpath = alwaysArray( path );\n\t\t\t\treturn cldr.get( [ prepend ].concat( path ) );\n\t\t\t};\n\t\t};\n\n\t\tsupplemental = prepend( \"supplemental\" );\n\n\t\t// Week Data\n\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Week_Data\n\t\tsupplemental.weekData = prepend( \"supplemental/weekData\" );\n\n\t\tsupplemental.weekData.firstDay = function() {\n\t\t\treturn cldr.get( \"supplemental/weekData/firstDay/{territory}\" ) ||\n\t\t\t\tcldr.get( \"supplemental/weekData/firstDay/001\" );\n\t\t};\n\n\t\tsupplemental.weekData.minDays = function() {\n\t\t\tvar minDays = cldr.get( \"supplemental/weekData/minDays/{territory}\" ) ||\n\t\t\t\tcldr.get( \"supplemental/weekData/minDays/001\" );\n\t\t\treturn parseInt( minDays, 10 );\n\t\t};\n\n\t\t// Time Data\n\t\t// http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Data\n\t\tsupplemental.timeData = prepend( \"supplemental/timeData\" );\n\n\t\tsupplemental.timeData.allowed = function() {\n\t\t\treturn cldr.get( \"supplemental/timeData/{territory}/_allowed\" ) ||\n\t\t\t\tcldr.get( \"supplemental/timeData/001/_allowed\" );\n\t\t};\n\n\t\tsupplemental.timeData.preferred = function() {\n\t\t\treturn cldr.get( \"supplemental/timeData/{territory}/_preferred\" ) ||\n\t\t\t\tcldr.get( \"supplemental/timeData/001/_preferred\" );\n\t\t};\n\n\t\treturn supplemental;\n\n\t};\n\n\n\n\n\tvar initSuper = Cldr.prototype.init;\n\n\t/**\n\t * .init() automatically ran on construction.\n\t *\n\t * Overload .init().\n\t */\n\tCldr.prototype.init = function() {\n\t\tinitSuper.apply( this, arguments );\n\t\tthis.supplemental = supplementalMain( this );\n\t};\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n(function( factory ) {\n\n\tif ( typeof define === \"function\" && define.amd ) {\n\t\t// AMD.\n\t\tdefine( [ \"../cldr\" ], factory );\n\t} else if ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// Node. CommonJS.\n\t\tmodule.exports = factory( require( \"../cldr\" ) );\n\t} else {\n\t\t// Global\n\t\tfactory( Cldr );\n\t}\n\n}(function( Cldr ) {\n\n\t// Build optimization hack to avoid duplicating functions across modules.\n\tvar coreLoad = Cldr._coreLoad;\n\tvar jsonMerge = Cldr._jsonMerge;\n\tvar pathNormalize = Cldr._pathNormalize;\n\tvar resourceGet = Cldr._resourceGet;\n\tvar validatePresence = Cldr._validatePresence;\n\tvar validateTypePath = Cldr._validateTypePath;\n\n\n\n\tvar bundleParentLookup = function( Cldr, locale ) {\n\t\tvar normalizedPath, parent;\n\n\t\tif ( locale === \"root\" ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// First, try to find parent on supplemental data.\n\t\tnormalizedPath = pathNormalize( [ \"supplemental/parentLocales/parentLocale\", locale ] );\n\t\tparent = resourceGet( Cldr._resolved, normalizedPath ) || resourceGet( Cldr._raw, normalizedPath );\n\t\tif ( parent ) {\n\t\t\treturn parent;\n\t\t}\n\n\t\t// Or truncate locale.\n\t\tparent = locale.substr( 0, locale.lastIndexOf( Cldr.localeSep ) );\n\t\tif ( !parent ) {\n\t\t\treturn \"root\";\n\t\t}\n\n\t\treturn parent;\n\t};\n\n\n\n\n\t// @path: normalized path\n\tvar resourceSet = function( data, path, value ) {\n\t\tvar i,\n\t\t\tnode = data,\n\t\t\tlength = path.length;\n\n\t\tfor ( i = 0; i < length - 1; i++ ) {\n\t\t\tif ( !node[ path[ i ] ] ) {\n\t\t\t\tnode[ path[ i ] ] = {};\n\t\t\t}\n\t\t\tnode = node[ path[ i ] ];\n\t\t}\n\t\tnode[ path[ i ] ] = value;\n\t};\n\n\n\tvar itemLookup = (function() {\n\n\tvar lookup;\n\n\tlookup = function( Cldr, locale, path, attributes, childLocale ) {\n\t\tvar normalizedPath, parent, value;\n\n\t\t// 1: Finish recursion\n\t\t// 2: Avoid infinite loop\n\t\tif ( typeof locale === \"undefined\" /* 1 */ || locale === childLocale /* 2 */ ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Resolve path\n\t\tnormalizedPath = pathNormalize( path, attributes );\n\n\t\t// Check resolved (cached) data first\n\t\t// 1: Due to #16, never use the cached resolved non-leaf nodes. It may not\n\t\t// represent its leafs in its entirety.\n\t\tvalue = resourceGet( Cldr._resolved, normalizedPath );\n\t\tif ( value !== undefined && typeof value !== \"object\" /* 1 */ ) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Check raw data\n\t\tvalue = resourceGet( Cldr._raw, normalizedPath );\n\n\t\tif ( value === undefined ) {\n\t\t\t// Or, lookup at parent locale\n\t\t\tparent = bundleParentLookup( Cldr, locale );\n\t\t\tvalue = lookup( Cldr, parent, path, jsonMerge( attributes, { bundle: parent }), locale );\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\t\t\t// Set resolved (cached)\n\t\t\tresourceSet( Cldr._resolved, normalizedPath, value );\n\t\t}\n\n\t\treturn value;\n\t};\n\n\treturn lookup;\n\n}());\n\n\n\tCldr._raw = {};\n\n\t/**\n\t * Cldr.load( json [, json, ...] )\n\t *\n\t * @json [JSON] CLDR data or [Array] Array of @json's.\n\t *\n\t * Load resolved or unresolved cldr data.\n\t * Overwrite Cldr.load().\n\t */\n\tCldr.load = function() {\n\t\tCldr._raw = coreLoad( Cldr, Cldr._raw, arguments );\n\t};\n\n\t/**\n\t * Overwrite Cldr.prototype.get().\n\t */\n\tCldr.prototype.get = function( path ) {\n\t\tvalidatePresence( path, \"path\" );\n\t\tvalidateTypePath( path, \"path\" );\n\n\t\t// 1: use bundle as locale on item lookup for simplification purposes, because no other extended subtag is used anyway on bundle parent lookup.\n\t\t// 2: during init(), this method is called, but bundle is yet not defined. Use \"\" as a workaround in this very specific scenario.\n\t\treturn itemLookup( Cldr, this.attributes && this.attributes.bundle /* 1 */ || \"\" /* 2 */, path, this.attributes );\n\t};\n\n\t// In case cldr/unresolved is loaded after cldr/event, we trigger its overloads again. Because, .get is overwritten in here.\n\tif ( Cldr._eventInit ) {\n\t\tCldr._eventInit();\n\t}\n\n\treturn Cldr;\n\n\n\n\n}));\n","/**\n * CLDR JavaScript Library v0.5.0\n * http://jquery.com/\n *\n * Copyright 2013 Rafael Xavier de Souza\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2017-08-11T11:52Z\n */\n/*!\n * CLDR JavaScript Library v0.5.0 2017-08-11T11:52Z MIT license © Rafael Xavier\n * http://git.io/h4lmVg\n */\n\n// Cldr\nmodule.exports = require( \"./cldr\" );\n\n// Extent Cldr with the following modules\nrequire( \"./cldr/event\" );\nrequire( \"./cldr/supplemental\" );\nrequire( \"./cldr/unresolved\" );\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport CldrDateTimeTextProvider from './format/cldr/CldrDateTimeTextProvider';\n\nexport default class Locale {\n static getAvailableLocales() {\n return new CldrDateTimeTextProvider().getAvailableLocales();\n }\n\n // TODO: maybe use new Cldr(<'en'>) constructor instead?\n // see https://github.com/rxaviers/cldrjs#instantiate-a-locale-and-get-it-normalized\n constructor(language, country = '', localeString = '') {\n this._language = language;\n this._country = country;\n this._localeString = localeString;\n }\n\n language() {\n return this._language;\n }\n\n country() {\n return this._country;\n }\n\n localeString() {\n if (this._localeString.length > 0) {\n return this._localeString;\n }\n if (this._country.length > 0) {\n return `${this._language}-${this._country}`;\n } else {\n return this._language;\n }\n }\n\n toString() {\n return `Locale[${this.localeString()}]`;\n }\n\n equals(other) {\n if (!other) {\n return false;\n }\n if (!(other instanceof Locale)) {\n return false;\n }\n return this.localeString() === other.localeString();\n }\n}\n\nexport function _init() {\n //some samples/consts\n Locale.ENGLISH = new Locale('en');\n Locale.US = new Locale('en', 'US', 'en'); // default in cldr-data, no en-US\n Locale.UK = new Locale('en', 'GB');\n Locale.CANADA = new Locale('en', 'CA');\n Locale.FRENCH = new Locale('fr');\n Locale.FRANCE = new Locale('fr', 'FR', 'fr'); // default in cldr-data, no fr-FR\n Locale.GERMAN = new Locale('de');\n Locale.GERMANY = new Locale('de', 'DE', 'de'); // default in cldr-data, no de-DE\n}\n","/*\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport { _init as localeInit } from './Locale';\nimport { _init as weekFieldsInit } from './temporal/WeekFields';\n\nlet isInit = false;\n\nfunction init() {\n /* istanbul ignore if */\n if (isInit) {\n return;\n }\n\n isInit = true;\n\n localeInit();\n weekFieldsInit();\n}\n\ninit();\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { _ as jodaInternal, DateTimeFormatter } from 'js-joda';\n// eslint-disable-next-line no-unused-vars, (needed for esdoc)\nimport Locale from '../Locale';\n\nconst { assert: { requireNonNull } } = jodaInternal;\n\nexport default class LocaleDateTimeFormatter extends DateTimeFormatter {\n\n /**\n * Returns a copy of this formatter with a new locale.\n *

\n * This is used to lookup any part of the formatter needing specific\n * localization, such as the text or localized pattern.\n *

\n * This instance is immutable and unaffected by this method call.\n *\n * @param {!Locale} locale the new locale, not null\n * @return a formatter based on this formatter with the requested locale, not null\n */\n withLocale(locale) {\n requireNonNull(locale, 'locale');\n if (locale.equals(this._locale)) {\n return this;\n }\n return new DateTimeFormatter(this._printerParser, locale, this._decimalStyle, this._resolverStyle, this._resolverFields, this._chrono, this._zone);\n }\n\n\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n\n/**\n * Helper method to create an immutable entry.\n *\n * @param text the text, not null\n * @param field the field, not null\n * @return the entry, not null\n */\nexport const createEntry = (text, field) => {\n return {\n key: text,\n value: field,\n toString: function () {\n return text + '->' + field;\n }\n };\n};\n\nconst _comparator = (obj1, obj2) => {\n return obj2.key.length - obj1.key.length; // longest to shortest\n};\n\n/**\n * Stores the text for a single locale.\n *

\n * Some fields have a textual representation, such as day-of-week or month-of-year.\n * These textual representations can be captured in this class for printing\n * and parsing.\n */\nexport class LocaleStore {\n //-----------------------------------------------------------------------\n /**\n * Constructor.\n *\n * @param {Object} valueTextMap the map of values to text to store, assigned and not altered, not null\n */\n constructor(valueTextMap) {\n this._valueTextMap = valueTextMap;\n const map = {};\n let allList = [];\n Object.keys(valueTextMap).forEach((style) => {\n const reverse = {};\n Object.keys(valueTextMap[style]).forEach((key) => {\n const value = valueTextMap[style][key];\n if (reverse[value] === undefined) {\n reverse[value] = createEntry(value, Number.parseInt(key));\n }\n });\n const list = Object.values(reverse);\n list.sort(_comparator);\n map[style] = list;\n allList = allList.concat(list);\n map[null] = allList;\n });\n allList.sort(_comparator);\n this._parsable = map;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Gets the text for the specified field value, locale and style\n * for the purpose of printing.\n *\n * @param {Number} value the value to get text for, not null\n * @param {TextStyle} style the style to get text for, not null\n * @return the text for the field value, null if no text found\n */\n getText(value, style) {\n const map = this._valueTextMap[style];\n return map != null ? map[value] : null;\n }\n\n /**\n * Gets an iterator of text to field for the specified style for the purpose of parsing.\n *

\n * The iterator must be returned in order from the longest text to the shortest.\n *\n * @param style the style to get text for, null for all parsable text\n * @return the iterator of text to field pairs, in order from longest text to shortest text,\n * null if the style is not parsable\n */\n getTextIterator(style) {\n const list = this._parsable[style];\n return list != null ? list[Symbol.iterator]() : null;\n }\n}\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeFormatterBuilder,\n IllegalArgumentException,\n TextStyle,\n ChronoField,\n TemporalField\n} from 'js-joda';\n\nimport TextPrinterParser from '../parser/TextPrinterParser';\nimport CldrDateTimeTextProvider from './CldrDateTimeTextProvider';\nimport CldrZoneTextPrinterParser from './CldrZoneTextPrinterParser';\nimport {LocaleStore} from '../LocaleStore';\nimport LocalizedOffsetPrinterParser from '../parser/LocalizedOffsetPrinterParser';\nimport WeekFieldsPrinterParser from '../parser/WeekFieldsPrinterParser';\n\nconst { assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n/** DateTimeFormatterBuilder extension functions implementing locale handling using cldr data (http://cldr.unicode.org/)\n */\nexport default class CldrDateTimeFormatterBuilder extends DateTimeFormatterBuilder {\n\n //-------------------------------------------------------------------------\n /**\n * function overloading for {@link CldrDateTimeFormatterBuilder#appendText}\n *\n * if called with 1 arguments and first argument is an instance of ChronoField,\n * then {@link CldrDateTimeFormatterBuilder.appendTextField} is executed.\n * if called with 2 arguments and second argument is an instance of TextStyle,\n * then {@link CldrDateTimeFormatterBuilder.appendTextFieldStyle} is executed.\n *\n * Otherwise {@link CldrDateTimeFormatterBuilder.appendTextFieldMap} is executed.\n *\n * @param {!ChronoField} field\n * @param {!(TextStyle|Object)} styleOrMap\n * @returns {DateTimeFormatterBuilder} this for chaining\n */\n appendText(field, styleOrMap) {\n if (styleOrMap === undefined) {\n return this.appendTextField(field);\n } else if (styleOrMap instanceof TextStyle) {\n return this.appendTextFieldStyle(field, styleOrMap);\n } else {\n return this.appendTextFieldMap(field, styleOrMap);\n }\n }\n\n /**\n * Appends the text of a date-time field to the formatter using the full\n * text style.\n *

\n * The text of the field will be output during a print.\n * The value must be within the valid range of the field.\n * If the value cannot be obtained then an exception will be thrown.\n * If the field has no textual representation, then the numeric value will be used.\n *

\n * The value will be printed as per the normal print of an integer value.\n * Only negative numbers will be signed. No padding will be added.\n *\n * @param {!TemporalField} field the field to append, not null\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextField(field) {\n return this.appendTextFieldStyle(field, TextStyle.FULL);\n }\n\n /**\n * Appends the text of a date-time field to the formatter.\n *

\n * The text of the field will be output during a print.\n * The value must be within the valid range of the field.\n * If the value cannot be obtained then an exception will be thrown.\n * If the field has no textual representation, then the numeric value will be used.\n *

\n * The value will be printed as per the normal print of an integer value.\n * Only negative numbers will be signed. No padding will be added.\n *\n * @param {!TemporalField} field the field to append, not null\n * @param {!TextStyle} textStyle the text style to use, not null\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextFieldStyle(field, textStyle) {\n requireNonNull(field, 'field');\n requireInstance(field, TemporalField, 'field');\n requireNonNull(textStyle, 'textStyle');\n requireInstance(textStyle, TextStyle, 'textStyle');\n this._appendInternal(new TextPrinterParser(field, textStyle, new CldrDateTimeTextProvider()));\n return this;\n }\n\n /**\n * Appends the text of a date-time field to the formatter using the specified\n * map to supply the text.\n *

\n * The standard text outputting methods use the localized text in the JDK.\n * This method allows that text to be specified directly.\n * The supplied map is not validated by the builder to ensure that printing or\n * parsing is possible, thus an invalid map may throw an error during later use.\n *

\n * Supplying the map of text provides considerable flexibility in printing and parsing.\n * For example, a legacy application might require or supply the months of the\n * year as \"JNY\", \"FBY\", \"MCH\" etc. These do not match the standard set of text\n * for localized month names. Using this method, a map can be created which\n * defines the connection between each value and the text:\n *

\n     * Map<Long, String> map = new HashMap<>();\n     * map.put(1, \"JNY\");\n     * map.put(2, \"FBY\");\n     * map.put(3, \"MCH\");\n     * ...\n     * builder.appendText(MONTH_OF_YEAR, map);\n     * 
\n *

\n * Other uses might be to output the value with a suffix, such as \"1st\", \"2nd\", \"3rd\",\n * or as Roman numerals \"I\", \"II\", \"III\", \"IV\".\n *

\n * During printing, the value is obtained and checked that it is in the valid range.\n * If text is not available for the value then it is output as a number.\n * During parsing, the parser will match against the map of text and numeric values.\n *\n * @param {!ChronoField} field the field to append, not null\n * @param {!Object} textLookup the map from the value to the text\n * @return {DateTimeFormatterBuilder} this, for chaining, not null\n */\n appendTextFieldMap(field, textLookup) {\n requireNonNull(field, 'field');\n requireInstance(field, ChronoField, 'field');\n requireNonNull(textLookup, 'textLookup');\n const copy = Object.assign({}, textLookup);\n const map = {};\n map[TextStyle.FULL] = copy;\n const store = new LocaleStore(map);\n const provider = {\n getText: function(field, value, style) {\n return store.getText(value, style);\n },\n getTextIterator: function(field, style) {\n return store.getTextIterator(style);\n }\n };\n this._appendInternal(new TextPrinterParser(field, TextStyle.FULL, provider));\n return this;\n }\n\n appendWeekField(field, count) {\n requireNonNull(field, 'field');\n requireNonNull(count, 'count');\n this._appendInternal(new WeekFieldsPrinterParser(field, count));\n return this;\n }\n\n /**\n * Appends the time-zone name, such as 'British Summer Time', to the formatter.\n *

\n * This appends an instruction to print the textual name of the zone to the builder.\n *

\n * During printing, the zone is obtained using a mechanism equivalent\n * to querying the temporal with {@link TemporalQueries#zoneId()}.\n * If the zone is a {@code ZoneOffset} it will be printed using the\n * result of {@link ZoneOffset#getId()}.\n * If the zone is not an offset, the textual name will be looked up\n * for the locale set in the {@link DateTimeFormatter}.\n * If the temporal object being printed represents an instant, then the text\n * will be the summer or winter time text as appropriate.\n * If the lookup for text does not find any suitable reuslt, then the\n * {@link ZoneId#getId() ID} will be printed instead.\n * If the zone cannot be obtained then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * Parsing is not currently supported.\n *\n * @param {!TextStyle} textStyle the text style to use, not null\n * @return this, for chaining, not null\n */\n appendZoneText(textStyle) {\n this._appendInternal(new CldrZoneTextPrinterParser(textStyle));\n return this;\n }\n\n /**\n * Appends the localized zone offset, such as 'GMT+01:00', to the formatter.\n *

\n * This appends a localized zone offset to the builder, the format of the\n * localized offset is controlled by the specified {@link FormatStyle style}\n * to this method:\n *

    \n *
  • {@link TextStyle#FULL full} - formats with localized offset text, such\n * as 'GMT, 2-digit hour and minute field, optional second field if non-zero,\n * and colon.\n *
  • {@link TextStyle#SHORT short} - formats with localized offset text,\n * such as 'GMT, hour without leading zero, optional 2-digit minute and\n * second if non-zero, and colon.\n *
\n *

\n * During formatting, the offset is obtained using a mechanism equivalent\n * to querying the temporal with {@link TemporalQueries#offset()}.\n * If the offset cannot be obtained then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * During parsing, the offset is parsed using the format defined above.\n * If the offset cannot be parsed then an exception is thrown unless the\n * section of the formatter is optional.\n *

\n * @param {TextStyle} textStyle the format style to use, not null\n * @return this, for chaining, not null\n * @throws IllegalArgumentException if style is neither {@link TextStyle#FULL\n * full} nor {@link TextStyle#SHORT short}\n */\n appendLocalizedOffset(textStyle) {\n requireNonNull(textStyle, 'textStyle');\n if (textStyle !== TextStyle.FULL && textStyle !== TextStyle.SHORT) {\n throw new IllegalArgumentException('Style must be either full or short');\n }\n this._appendInternal(new LocalizedOffsetPrinterParser(textStyle));\n return this;\n }\n\n //-----------------------------------------------------------------------\n\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { ChronoField, IsoFields, TextStyle } from 'js-joda';\n\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nimport {LocaleStore, createEntry} from '../LocaleStore';\n\n/**\n * The Service Provider Implementation to obtain date-time text for a field.\n *

\n * This implementation is based on data from cldr.\n *\n * @private\n */\nexport default class CldrDateTimeTextProvider {\n\n constructor() {\n this._cache = {};\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n }\n\n //-----------------------------------------------------------------------\n getAvailableLocales() {\n /* eslint-disable no-undef */\n // JS_JODA_LOCALE_AVAILABLE_LOCALS may be defined using webpack DefinePlugin\n if (typeof(JS_JODA_LOCALE_AVAILABLE_LOCALES) !== 'undefined') {\n return JS_JODA_LOCALE_AVAILABLE_LOCALES;\n }\n /* eslint-enable no-undef */\n return cldrData('availableLocales.json').availableLocales;\n }\n\n //-----------------------------------------------------------------------\n getText(field, value, style, locale) {\n const store = this._findStore(field, locale);\n if (store instanceof LocaleStore) {\n return store.getText(value, style);\n }\n return null;\n }\n\n getTextIterator(field, style, locale) {\n const store = this._findStore(field, locale);\n if (store instanceof LocaleStore) {\n return store.getTextIterator(style);\n }\n return null;\n }\n\n //-----------------------------------------------------------------------\n _findStore(field, locale) {\n const key = createEntry(field, locale);\n let store = this._cache[key];\n if (store === undefined) {\n store = this._createStore(field, locale);\n this._cache[key] = store;\n }\n return store;\n }\n\n _createStore(field, locale) {\n Cldr.load(cldrData(`main/${locale.localeString()}/ca-gregorian.json`));\n const cldr = new Cldr(locale.localeString());\n if (field === ChronoField.MONTH_OF_YEAR) {\n const monthsData = cldr.main('dates/calendars/gregorian/months/format');\n const styleMap = {};\n let data = {};\n data[1] = monthsData.wide[1];\n data[2] = monthsData.wide[2];\n data[3] = monthsData.wide[3];\n data[4] = monthsData.wide[4];\n data[5] = monthsData.wide[5];\n data[6] = monthsData.wide[6];\n data[7] = monthsData.wide[7];\n data[8] = monthsData.wide[8];\n data[9] = monthsData.wide[9];\n data[10] = monthsData.wide[10];\n data[11] = monthsData.wide[11];\n data[12] = monthsData.wide[12];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = monthsData.narrow[1];\n data[2] = monthsData.narrow[2];\n data[3] = monthsData.narrow[3];\n data[4] = monthsData.narrow[4];\n data[5] = monthsData.narrow[5];\n data[6] = monthsData.narrow[6];\n data[7] = monthsData.narrow[7];\n data[8] = monthsData.narrow[8];\n data[9] = monthsData.narrow[9];\n data[10] = monthsData.narrow[10];\n data[11] = monthsData.narrow[11];\n data[12] = monthsData.narrow[12];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = monthsData.abbreviated[1];\n data[2] = monthsData.abbreviated[2];\n data[3] = monthsData.abbreviated[3];\n data[4] = monthsData.abbreviated[4];\n data[5] = monthsData.abbreviated[5];\n data[6] = monthsData.abbreviated[6];\n data[7] = monthsData.abbreviated[7];\n data[8] = monthsData.abbreviated[8];\n data[9] = monthsData.abbreviated[9];\n data[10] = monthsData.abbreviated[10];\n data[11] = monthsData.abbreviated[11];\n data[12] = monthsData.abbreviated[12];\n styleMap[TextStyle.SHORT] = data;\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.DAY_OF_WEEK) {\n const daysData = cldr.main('dates/calendars/gregorian/days/format');\n const styleMap = {};\n let data = {};\n data[1] = daysData.wide.mon;\n data[2] = daysData.wide.tue;\n data[3] = daysData.wide.wed;\n data[4] = daysData.wide.thu;\n data[5] = daysData.wide.fri;\n data[6] = daysData.wide.sat;\n data[7] = daysData.wide.sun;\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = daysData.narrow.mon;\n data[2] = daysData.narrow.tue;\n data[3] = daysData.narrow.wed;\n data[4] = daysData.narrow.thu;\n data[5] = daysData.narrow.fri;\n data[6] = daysData.narrow.sat;\n data[7] = daysData.narrow.sun;\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = daysData.abbreviated.mon;\n data[2] = daysData.abbreviated.tue;\n data[3] = daysData.abbreviated.wed;\n data[4] = daysData.abbreviated.thu;\n data[5] = daysData.abbreviated.fri;\n data[6] = daysData.abbreviated.sat;\n data[7] = daysData.abbreviated.sun;\n styleMap[TextStyle.SHORT] = data;\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.AMPM_OF_DAY) {\n const dayPeriodsData = cldr.main('dates/calendars/gregorian/dayPeriods/format');\n const styleMap = {};\n let data = {};\n data[0] = dayPeriodsData.wide.am;\n data[1] = dayPeriodsData.wide.pm;\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[0] = dayPeriodsData.narrow.am;\n data[1] = dayPeriodsData.narrow.pm;\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[0] = dayPeriodsData.abbreviated.am;\n data[1] = dayPeriodsData.abbreviated.pm;\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n if (field === ChronoField.ERA) {\n const erasData = cldr.main('dates/calendars/gregorian/eras');\n const styleMap = {};\n let data = {};\n data[0] = erasData.eraNames['0'];\n data[1] = erasData.eraNames['1'];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[0] = erasData.eraNarrow['0'];\n data[1] = erasData.eraNarrow['1'];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[0] = erasData.eraAbbr['0'];\n data[1] = erasData.eraAbbr['1'];\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n if (field === IsoFields.QUARTER_OF_YEAR) {\n const quartersData = cldr.main('dates/calendars/gregorian/quarters/format');\n const styleMap = {};\n let data = {};\n data[1] = quartersData.wide['1'];\n data[2] = quartersData.wide['2'];\n data[3] = quartersData.wide['3'];\n data[4] = quartersData.wide['4'];\n styleMap[TextStyle.FULL] = data;\n\n data = {};\n data[1] = quartersData.narrow['1'];\n data[2] = quartersData.narrow['2'];\n data[3] = quartersData.narrow['3'];\n data[4] = quartersData.narrow['4'];\n styleMap[TextStyle.NARROW] = data;\n\n data = {};\n data[1] = quartersData.abbreviated['1'];\n data[2] = quartersData.abbreviated['2'];\n data[3] = quartersData.abbreviated['3'];\n data[4] = quartersData.abbreviated['4'];\n styleMap[TextStyle.SHORT] = data;\n\n return this._createLocaleStore(styleMap);\n }\n return null; // null marker for map\n }\n\n //-----------------------------------------------------------------------\n _createLocaleStore(valueTextMap) {\n valueTextMap[TextStyle.FULL_STANDALONE] = valueTextMap[TextStyle.FULL];\n valueTextMap[TextStyle.SHORT_STANDALONE] = valueTextMap[TextStyle.SHORT];\n /* istanbul ignore if */ // this doesn't seem to happen?\n if (Object.keys(valueTextMap).includes(TextStyle.NARROW) && !Object.keys(valueTextMap).includes(TextStyle.NARROW_STANDALONE)) {\n valueTextMap[TextStyle.NARROW_STANDALONE] = valueTextMap[TextStyle.NARROW];\n }\n return new LocaleStore(valueTextMap);\n }\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nimport {\n _ as jodaInternal,\n TextStyle,\n TemporalQueries,\n ZoneId,\n ZoneOffset,\n ZoneRulesProvider,\n} from 'js-joda';\n\nconst { assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n//-----------------------------------------------------------------------\nconst LENGTH_COMPARATOR = (str1, str2) => {\n let cmp = str2.length - str1.length;\n if (cmp === 0) {\n cmp = str1.localeCompare(str2);\n }\n return cmp;\n};\n/**\n * Prints or parses a zone ID.\n */\nexport default class CldrZoneTextPrinterParser {\n /** The text style to output. */\n\n constructor(textStyle) {\n requireNonNull(textStyle, 'textStyle');\n requireInstance(textStyle, TextStyle, 'textStyle');\n this._textStyle = textStyle;\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n Cldr.load(cldrData('supplemental/metaZones.json'));\n }\n\n _resolveZoneIdText(cldr, zoneId, style, type, mapZones) {\n const zoneData = cldr.main(`dates/timeZoneNames/zone/${zoneId}/${style}/${type}`);\n if (zoneData) {\n return zoneData;\n } else {\n const metazoneInfo = cldr.get(`supplemental/metaZones/metazoneInfo/timezone/${zoneId}`);\n if (metazoneInfo) {\n // const zoneData = cldr.main(`dates/timeZoneNames/metazone/Acre`);\n // TODO: determine metaZone for current temporal, for now, we use the last one :/\n const metazone = metazoneInfo[metazoneInfo.length - 1]['usesMetazone']['_mzone'];\n let metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/${type}`);\n if (metaZoneData) {\n return metaZoneData;\n } else {\n // type fallback, first generic, then standard\n metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/generic`);\n if (!metaZoneData) {\n metaZoneData = cldr.main(`dates/timeZoneNames/metazone/${metazone}/${style}/standard`);\n }\n if (metaZoneData) {\n return metaZoneData;\n } else {\n // find preferred Zone and resolve again\n const preferredZone = mapZones[metazone][cldr.attributes.territory];\n if (preferredZone) {\n if (preferredZone !== zoneId) {\n return this._resolveZoneIdText(cldr, preferredZone, style, type, mapZones);\n }\n } else {\n // find golden Zone and resolve again\n const goldenZone = mapZones[metazone]['001'];\n if (goldenZone !== zoneId) {\n return this._resolveZoneIdText(cldr, goldenZone, style, type, mapZones);\n }\n }\n }\n }\n }\n }\n }\n\n //-----------------------------------------------------------------------\n print(context, buf) {\n\n //see http://www.unicode.org/reports/tr35/tr35-dates.html#Time_Zone_Names\n\n const zone = context.getValueQuery(TemporalQueries.zoneId());\n /* istanbul ignore if */ // shouldn't happen... getValueQuery throws before returning null\n if (zone == null) {\n return false;\n }\n if (zone.normalized() instanceof ZoneOffset) {\n buf.append(zone.id());\n return true;\n }\n const daylight = false;\n const hasDaylightSupport = false;\n /* TODO: currently js-joda-timezone does not support ZoneRules.isDaylightSavings() ... uncomment if it does\n const temporal = context.temporal();\n if (temporal.isSupported(ChronoField.INSTANT_SECONDS)) {\n hasDaylightSupport = true;\n const instant = Instant.ofEpochSecond(temporal.getLong(ChronoField.INSTANT_SECONDS));\n daylight = zone.rules().isDaylightSavings(instant);\n }*/\n const tzType = hasDaylightSupport ? (daylight ? 'daylight' : 'standard') : 'generic';\n const tzstyle = (this._textStyle.asNormal() === TextStyle.FULL ? 'long' : 'short');\n Cldr.load(cldrData(`main/${context.locale().localeString()}/timeZoneNames.json`));\n const cldr = new Cldr(context.locale().localeString());\n const mapZones = {};\n\n cldr.get('supplemental/metaZones/metazones').forEach((metaZone) => {\n if (metaZone.mapZone) {\n if (!mapZones[metaZone.mapZone._other]) {\n mapZones[metaZone.mapZone._other] = {};\n }\n mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type;\n }\n });\n\n const text = this._resolveZoneIdText(cldr, zone.id(), tzstyle, tzType, mapZones);\n if (text) {\n buf.append(text);\n } else {\n // fallback, print zoneId\n buf.append(zone.id());\n }\n return true;\n }\n\n parse(context, text, position) {\n const ids = {};\n Cldr.load(cldrData(`main/${context.locale().localeString()}/timeZoneNames.json`));\n const cldr = new Cldr(context.locale().localeString());\n const mapZones = {};\n\n cldr.get('supplemental/metaZones/metazones').forEach((metaZone) => {\n if (metaZone.mapZone) {\n if (!mapZones[metaZone.mapZone._other]) {\n mapZones[metaZone.mapZone._other] = {};\n }\n mapZones[metaZone.mapZone._other][metaZone.mapZone._territory] = metaZone.mapZone._type;\n }\n });\n for (const id of ZoneRulesProvider.getAvailableZoneIds()) {\n ids[id] = id;\n const tzstyle = (this._textStyle.asNormal() === TextStyle.FULL ? 'long' : 'short');\n\n const genericText = this._resolveZoneIdText(cldr, id, tzstyle, 'generic', mapZones);\n if (genericText) {\n ids[genericText] = id;\n }\n const standardText = this._resolveZoneIdText(cldr, id, tzstyle, 'standard', mapZones);\n if (standardText) {\n ids[standardText] = id;\n }\n const daylightText = this._resolveZoneIdText(cldr, id, tzstyle, 'daylight', mapZones);\n if (daylightText) {\n ids[daylightText] = id;\n }\n }\n // threeten is using a (sorted) TreeMap... so we need to sort the keys\n const sortedKeys = Object.keys(ids).sort(LENGTH_COMPARATOR);\n for (const name of sortedKeys) {\n if (context.subSequenceEquals(text, position, name, 0, name.length)) {\n context.setParsedZone(ZoneId.of(ids[name]));\n return position + name.length;\n }\n }\n return ~position;\n }\n\n toString() {\n return `ZoneText(${this._textStyle})`;\n }\n}\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeFormatterBuilder,\n ChronoField,\n TextStyle\n} from 'js-joda';\n\nconst { MathUtil } = jodaInternal;\n//-----------------------------------------------------------------------\n/**\n * Prints or parses field text.\n * @private\n */\nexport default class LocalizedOffsetPrinterParser {\n /**\n * Constructor.\n *\n * @param {!TextStyle} textStyle the text style, not null\n */\n constructor(textStyle) {\n this._textStyle = textStyle;\n }\n\n textStyle() {\n return this._textStyle;\n }\n\n print(context, buf) {\n const offsetSecs = context.getValue(ChronoField.OFFSET_SECONDS);\n /* istanbul ignore if */ // shouldn't happen... getValue throws for unsupported fields?\n if (offsetSecs == null) {\n return false;\n }\n buf.append('GMT');\n if (this._textStyle === TextStyle.FULL) {\n return new DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').print(context, buf);\n }\n const totalSecs = MathUtil.safeToInt(offsetSecs);\n if (totalSecs !== 0) {\n const absHours = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs, 3600), 100)); // anything larger than 99 silently dropped\n const absMinutes = Math.abs(MathUtil.intMod(MathUtil.intDiv(totalSecs,60), 60));\n const absSeconds = Math.abs(MathUtil.intMod(totalSecs, 60));\n buf.append(totalSecs < 0 ? '-' : '+').append(absHours);\n if (absMinutes > 0 || absSeconds > 0) {\n buf.append(':')\n .append(MathUtil.intDiv(absMinutes, 10)).append(MathUtil.intMod(absMinutes,10));\n if (absSeconds > 0) {\n buf.append(':')\n .append(MathUtil.intDiv(absSeconds, 10)).append(MathUtil.intMod(absSeconds, 10));\n }\n }\n }\n return true;\n }\n\n parse(context, text, position) {\n if (context.subSequenceEquals(text, position, 'GMT', 0, 3) === false) {\n return ~position;\n }\n position += 3;\n if (this._textStyle === TextStyle.FULL) {\n return new DateTimeFormatterBuilder.OffsetIdPrinterParser('', '+HH:MM:ss').parse(context, text, position);\n }\n const end = text.length;\n if (position === end) {\n return context.setParsedField(ChronoField.OFFSET_SECONDS, 0, position, position);\n }\n const sign = text.charAt(position);\n if (sign !== '+' && sign !== '-') {\n return context.setParsedField(ChronoField.OFFSET_SECONDS, 0, position, position);\n }\n const negative = (sign === '-' ? -1 : 1);\n /* istanbul ignore if */ // cannot happen, already checked before\n if (position === end) {\n return ~position;\n }\n position++;\n // hour\n let ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let hour = MathUtil.parseInt(ch);\n if (position !== end) {\n ch = text.charAt(position);\n if (ch >= '0' && ch <= '9') {\n hour = hour * 10 + MathUtil.parseInt(ch);\n if (hour > 23) {\n return ~position;\n }\n position++;\n }\n }\n if (position === end || text.charAt(position) !== ':') {\n const offset = negative * 3600 * hour;\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n position++;\n // minute\n if (position > end - 2) {\n return ~position;\n }\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let min = MathUtil.parseInt(ch);\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n min = min * 10 + MathUtil.parseInt(ch);\n if (min > 59) {\n return ~position;\n }\n if (position === end || text.charAt(position) !== ':') {\n const offset = negative * (3600 * hour + 60 * min);\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n position++;\n // second\n if (position > end - 2) {\n return ~position;\n }\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n let sec = MathUtil.parseInt(ch);\n ch = text.charAt(position);\n if (ch < '0' || ch > '9') {\n return ~position;\n }\n position++;\n sec = sec * 10 + MathUtil.parseInt(ch);\n if (sec > 59) {\n return ~position;\n }\n const offset = negative * (3600 * hour + 60 * min + sec);\n return context.setParsedField(ChronoField.OFFSET_SECONDS, offset, position, position);\n }\n\n toString() {\n return `LocalizedOffset(${this._textStyle})`;\n }\n\n}\n\n//-----------------------------------------------------------------------\n","/**\n * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper\n * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos\n * @license BSD-3-Clause (see LICENSE in the root directory of this source tree)\n */\n\nimport { DateTimeFormatterBuilder, IllegalArgumentException, SignStyle, TextStyle } from 'js-joda';\n\n//-----------------------------------------------------------------------\n/**\n * Prints or parses field text.\n * @private\n */\nexport default class TextPrinterParser {\n /**\n * Constructor.\n *\n * @param {!TemporalField} field the field to output, not null\n * @param {!TextStyle} textStyle the text style, not null\n * @param {!DateTimeProvider} provider the text provider, not null\n */\n constructor(field, textStyle, provider) {\n // validated by caller\n this._field = field;\n this._textStyle = textStyle;\n this._provider = provider;\n }\n\n field() {\n return this._field;\n }\n\n textStyle() {\n return this._textStyle;\n }\n\n provider() {\n return this._provider;\n }\n\n print(context, buf) {\n const value = context.getValue(this._field);\n if (value === null) {\n return false;\n }\n const text = this._provider.getText(this._field, value, this._textStyle, context.locale());\n if (text === null) {\n return this._numberPrinterParser().print(context, buf);\n }\n buf.append(text);\n return true;\n }\n\n parse(context, parseText, position) {\n const length = parseText.length;\n if (position < 0 || position > length) {\n throw new IllegalArgumentException(`The position is invalid: ${position}`);\n }\n const style = (context.isStrict() ? this._textStyle : null);\n const it = this._provider.getTextIterator(this._field, style, context.locale());\n if (it != null) {\n for (const entry of it) {\n const itText = entry.key;\n if (context.subSequenceEquals(itText, 0, parseText, position, itText.length)) {\n return context.setParsedField(this._field, entry.value, position, position + itText.length);\n }\n }\n if (context.isStrict()) {\n return ~position;\n }\n }\n return this._numberPrinterParser().parse(context, parseText, position);\n }\n\n /**\n * Create and cache a number printer parser.\n * @return the number printer parser for this field, not null\n */\n _numberPrinterParser() {\n if (this._currentNumberPrinterParser == null) {\n this._currentNumberPrinterParser = new DateTimeFormatterBuilder.NumberPrinterParser(this._field, 1, 19, SignStyle.NORMAL);\n }\n return this._currentNumberPrinterParser;\n }\n\n toString() {\n if (this._textStyle === TextStyle.FULL) {\n return `Text(${this._field})`;\n }\n return `Text(${this._field},${this._textStyle})`;\n }\n}\n\n//-----------------------------------------------------------------------\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport { _ as jodaInternal, DateTimeFormatterBuilder, SignStyle } from 'js-joda';\n\nimport { WeekFields } from '../../temporal/WeekFields';\n\nconst { StringBuilder } = jodaInternal;\n\nexport default class WeekFieldsPrinterParser {\n constructor(letter, count) {\n this._letter = letter;\n this._count = count;\n }\n\n print(context, buf) {\n const weekFields = WeekFields.of(context.locale());\n const pp = this._evaluate(weekFields);\n return pp.print(context, buf);\n }\n\n parse(context, text, position) {\n const weekFields = WeekFields.of(context.locale());\n const pp = this._evaluate(weekFields);\n return pp.parse(context, text, position);\n }\n\n _evaluate(weekFields) {\n let pp = null;\n switch (this._letter) {\n case 'e': // day-of-week\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'c': // day-of-week\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.dayOfWeek(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'w': // week-of-year\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfWeekBasedYear(), this._count, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'W': // week-of-month\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekOfMonth(), 1, 2, SignStyle.NOT_NEGATIVE);\n break;\n case 'Y': // weekyear\n if (this._count === 2) {\n pp = new DateTimeFormatterBuilder.ReducedPrinterParser(weekFields.weekBasedYear(), 2, 2, 0, DateTimeFormatterBuilder.ReducedPrinterParser.BASE_DATE);\n } else {\n pp = new DateTimeFormatterBuilder.NumberPrinterParser(weekFields.weekBasedYear(), this._count, 19,\n (this._count < 4) ? SignStyle.NORMAL : SignStyle.EXCEEDS_PAD, -1);\n }\n break;\n }\n return pp;\n }\n\n toString() {\n const sb = new StringBuilder(30);\n sb.append('Localized(');\n if (this._letter === 'Y') {\n if (this._count === 1) {\n sb.append('WeekBasedYear');\n } else if (this._count === 2) {\n sb.append('ReducedValue(WeekBasedYear,2,2,2000-01-01)');\n } else {\n sb.append('WeekBasedYear,').append(this._count).append(',')\n .append(19).append(',')\n .append((this._count < 4) ? SignStyle.NORMAL : SignStyle.EXCEEDS_PAD);\n }\n } else {\n if (this._letter === 'c' || this._letter === 'e') {\n sb.append('DayOfWeek');\n } else if (this._letter === 'w') {\n sb.append('WeekOfWeekBasedYear');\n } else if (this._letter === 'W') {\n sb.append('WeekOfMonth');\n }\n sb.append(',');\n sb.append(this._count);\n }\n sb.append(')');\n return sb.toString();\n }\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\nimport localeDefault from './plug';\n\nexport default localeDefault;\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n/* eslint-disable no-param-reassign */\n\nimport CldrDateTimeFormatterBuilder from './format/cldr/CldrDateTimeFormatterBuilder';\nimport LocaleDateTimeFormatter from './format/LocaleDateTimeFormatter';\nimport Locale from './Locale';\n\nimport './_init';\n\n/**\n * plugin Function, call using js-jodas use()\n *\n * @param jsJoda\n */\nexport default function (jsJoda) {\n // inject all prototype properties (except constructor) from CldrDateTimeFormatterBuilder into DateTimeFormatterBuilder\n Object.getOwnPropertyNames(CldrDateTimeFormatterBuilder.prototype).forEach((prop) => {\n if (prop !== 'constructor') {\n jsJoda.DateTimeFormatterBuilder.prototype[prop] = CldrDateTimeFormatterBuilder.prototype[prop];\n }\n });\n // inject all prototype properties (except constructor) from LocaleDateTimeFormatter into DateTimeFormatter\n Object.getOwnPropertyNames(LocaleDateTimeFormatter.prototype).forEach((prop) => {\n if (prop !== 'constructor') {\n jsJoda.DateTimeFormatter.prototype[prop] = LocaleDateTimeFormatter.prototype[prop];\n }\n });\n // inject Locale into jsJoda\n jsJoda.Locale = Locale;\n}\n","/*\n * @copyright (c) 2017, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\nimport {\n _ as jodaInternal,\n DateTimeException,\n DayOfWeek,\n ChronoField,\n ChronoUnit,\n IllegalArgumentException,\n IllegalStateException,\n IsoChronology,\n IsoFields,\n LocalDate,\n ResolverStyle,\n ValueRange,\n Year\n} from 'js-joda';\nimport cldrData from 'cldr-data';\nimport Cldr from 'cldrjs';\n\nconst { MathUtil, assert: { requireNonNull, requireInstance } } = jodaInternal;\n\n//-----------------------------------------------------------------------\nconst DAY_OF_WEEK_RANGE = ValueRange.of(1, 7);\nconst WEEK_OF_MONTH_RANGE = ValueRange.of(0, 1, 4, 6);\nconst WEEK_OF_YEAR_RANGE = ValueRange.of(0, 1, 52, 54);\nconst WEEK_OF_WEEK_BASED_YEAR_RANGE = ValueRange.of(1, 52, 53);\nconst WEEK_BASED_YEAR_RANGE = ChronoField.YEAR.range();\n\n/* map from the string from cldr `firstDay()` to DayOfWeek */\nconst _weekDayMap = {\n 'mon': DayOfWeek.MONDAY,\n 'tue': DayOfWeek.TUESDAY,\n 'wed': DayOfWeek.WEDNESDAY,\n 'thu': DayOfWeek.THURSDAY,\n 'fri': DayOfWeek.FRIDAY,\n 'sat': DayOfWeek.SATURDAY,\n 'sun': DayOfWeek.SUNDAY,\n};\n\n/**\n * Field type that computes DayOfWeek, WeekOfMonth, and WeekOfYear\n * based on a WeekFields.\n * A separate Field instance is required for each different WeekFields;\n * combination of start of week and minimum number of days.\n * Constructors are provided to create fields for DayOfWeek, WeekOfMonth,\n * and WeekOfYear.\n */\nexport class ComputedDayOfField {\n\n /**\n * Returns a field to access the day of week,\n * computed based on a WeekFields.\n *

\n * The WeekDefintion of the first day of the week is used with\n * the ISO DAY_OF_WEEK field to compute week boundaries.\n */\n static ofDayOfWeekField(weekDef) {\n return new ComputedDayOfField('DayOfWeek', weekDef,\n ChronoUnit.DAYS, ChronoUnit.WEEKS, DAY_OF_WEEK_RANGE);\n }\n\n /**\n * Returns a field to access the week of month,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfMonth()\n */\n static ofWeekOfMonthField(weekDef) {\n return new ComputedDayOfField('WeekOfMonth', weekDef,\n ChronoUnit.WEEKS, ChronoUnit.MONTHS, WEEK_OF_MONTH_RANGE);\n }\n\n /**\n * Returns a field to access the week of year,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfYear()\n */\n static ofWeekOfYearField(weekDef) {\n return new ComputedDayOfField('WeekOfYear', weekDef,\n ChronoUnit.WEEKS, ChronoUnit.YEARS, WEEK_OF_YEAR_RANGE);\n }\n\n /**\n * Returns a field to access the week of week-based-year,\n * computed based on a WeekFields.\n * @see WeekFields#weekOfWeekBasedYear()\n */\n static ofWeekOfWeekBasedYearField(weekDef) {\n return new ComputedDayOfField('WeekOfWeekBasedYear', weekDef,\n ChronoUnit.WEEKS, IsoFields.WEEK_BASED_YEARS, WEEK_OF_WEEK_BASED_YEAR_RANGE);\n }\n\n /**\n * Returns a field to access the week-based-year,\n * computed based on a WeekFields.\n * @see WeekFields#weekBasedYear()\n */\n static ofWeekBasedYearField(weekDef) {\n return new ComputedDayOfField('WeekBasedYear', weekDef,\n IsoFields.WEEK_BASED_YEARS, ChronoUnit.FOREVER, WEEK_BASED_YEAR_RANGE);\n }\n\n /**\n *@private\n */\n constructor(name, weekDef, baseUnit, rangeUnit, range) {\n this._name = name;\n this._weekDef = weekDef;\n this._baseUnit = baseUnit;\n this._rangeUnit = rangeUnit;\n this._range = range;\n }\n\n getFrom(temporal) {\n // Offset the ISO DOW by the start of this week\n const sow = this._weekDef.firstDayOfWeek().value();\n const dow = this._localizedDayOfWeek(temporal, sow);\n\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return dow;\n } else if (this._rangeUnit === ChronoUnit.MONTHS) {\n return this._localizedWeekOfMonth(temporal, dow);\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n return this._localizedWeekOfYear(temporal, dow);\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return this._localizedWOWBY(temporal);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return this._localizedWBY(temporal);\n } else {\n throw new IllegalStateException('unreachable');\n }\n }\n\n _localizedDayOfWeek(temporal, sow) {\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n return MathUtil.floorMod(isoDow - sow, 7) + 1;\n }\n\n _localizedWeekOfMonth(temporal, dow) {\n const dom = temporal.get(ChronoField.DAY_OF_MONTH);\n const offset = this._startOfWeekOffset(dom, dow);\n return ComputedDayOfField._computeWeek(offset, dom);\n }\n\n _localizedWeekOfYear(temporal, dow) {\n const doy = temporal.get(ChronoField.DAY_OF_YEAR);\n const offset = this._startOfWeekOffset(doy, dow);\n return ComputedDayOfField._computeWeek(offset, doy);\n }\n\n _localizedWOWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n const previous = LocalDate.from(temporal).minus(1, ChronoUnit.WEEKS);\n return this._localizedWeekOfYear(previous, dow) + 1;\n } else if (woy >= 53) {\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const year = temporal.get(ChronoField.YEAR);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n return (woy - (weekIndexOfFirstWeekNextYear - 1));\n }\n }\n return woy;\n }\n\n _localizedWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const year = temporal.get(ChronoField.YEAR);\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n return year - 1;\n } else if (woy < 53) {\n return year;\n }\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n return year + 1;\n }\n return year;\n }\n\n /**\n * Returns an offset to align week start with a day of month or day of year.\n *\n * @param day the day; 1 through infinity\n * @param dow the day of the week of that day; 1 through 7\n * @return an offset in days to align a day with the start of the first 'full' week\n */\n _startOfWeekOffset(day, dow) {\n // offset of first day corresponding to the day of week in first 7 days (zero origin)\n const weekStart = MathUtil.floorMod(day - dow, 7);\n let offset = -weekStart;\n if (weekStart + 1 > this._weekDef.minimalDaysInFirstWeek()) {\n // The previous week has the minimum days in the current month to be a 'week'\n offset = 7 - weekStart;\n }\n return offset;\n }\n\n /**\n * Returns the week number computed from the reference day and reference dayOfWeek.\n *\n * @param offset the offset to align a date with the start of week\n * from {@link #startOfWeekOffset}.\n * @param day the day for which to compute the week number\n * @return the week number where zero is used for a partial week and 1 for the first full week\n */\n static _computeWeek(offset, day) {\n return MathUtil.intDiv((7 + offset + (day - 1)), 7);\n }\n\n adjustInto(temporal, newValue) {\n // Check the new value and get the old value of the field\n const newVal = this._range.checkValidIntValue(newValue, this);\n const currentVal = temporal.get(this);\n if (newVal === currentVal) {\n return temporal;\n }\n if (this._rangeUnit === ChronoUnit.FOREVER) {\n // adjust in whole weeks so dow never changes\n const baseWowby = temporal.get(this._weekDef.weekOfWeekBasedYear());\n const diffWeeks = MathUtil.roundDown((newValue - currentVal) * 52.1775);\n let result = temporal.plus(diffWeeks, ChronoUnit.WEEKS);\n if (result.get(this) > newVal) {\n // ended up in later week-based-year\n // move to last week of previous year\n const newWowby = result.get(this._weekDef.weekOfWeekBasedYear());\n result = result.minus(newWowby, ChronoUnit.WEEKS);\n } else {\n if (result.get(this) < newVal) {\n // ended up in earlier week-based-year\n result = result.plus(2, ChronoUnit.WEEKS);\n }\n // reset the week-of-week-based-year\n const newWowby = result.get(this._weekDef.weekOfWeekBasedYear());\n result = result.plus(baseWowby - newWowby, ChronoUnit.WEEKS);\n if (result.get(this) > newVal) {\n result = result.minus(1, ChronoUnit.WEEKS);\n }\n }\n return result;\n }\n // Compute the difference and add that using the base using of the field\n const delta = newVal - currentVal;\n return temporal.plus(delta, this._baseUnit);\n }\n\n resolve(fieldValues, partialTemporal, resolverStyle) {\n const sow = this._weekDef.firstDayOfWeek().value();\n if (this._rangeUnit === ChronoUnit.WEEKS) { // day-of-week\n const value = fieldValues.remove(this);\n const localDow = this._range.checkValidIntValue(value, this);\n const isoDow = MathUtil.floorMod((sow - 1) + (localDow - 1), 7) + 1;\n fieldValues.put(ChronoField.DAY_OF_WEEK, isoDow);\n return null;\n }\n if (fieldValues.containsKey(ChronoField.DAY_OF_WEEK) === false) {\n return null;\n }\n\n // week-based-year\n if (this._rangeUnit === ChronoUnit.FOREVER) {\n if (fieldValues.containsKey(this._weekDef.weekOfWeekBasedYear()) === false) {\n return null;\n }\n // const chrono = IsoChronology.INSTANCE; //TODO: Chronology.from(partialTemporal); // defaults to ISO\n const isoDow = ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(ChronoField.DAY_OF_WEEK));\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const wby = this.range().checkValidIntValue(fieldValues.get(this), this);\n let date;\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n date = LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); //TODO: chrono.date(wby, 1, this._weekDef.minimalDaysInFirstWeek());\n const wowby = fieldValues.get(this._weekDef.weekOfWeekBasedYear());\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = wowby - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n date = LocalDate.of(wby, 1, this._weekDef.minimalDaysInFirstWeek()); //TODO: chrono.date(wby, 1, this._weekDef.minimalDaysInFirstWeek());\n const wowby = this._weekDef.weekOfWeekBasedYear().range().checkValidIntValue(\n fieldValues.get(this._weekDef.weekOfWeekBasedYear()), this._weekDef.weekOfWeekBasedYear);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = wowby - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(this) !== fieldValues.get(this)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different year');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(this._weekDef.weekOfWeekBasedYear());\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n }\n\n if (fieldValues.containsKey(ChronoField.YEAR) === false) {\n return null;\n }\n const isoDow = ChronoField.DAY_OF_WEEK.checkValidIntValue(fieldValues.get(ChronoField.DAY_OF_WEEK));\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const year = ChronoField.YEAR.checkValidIntValue(fieldValues.get(ChronoField.YEAR));\n // const chrono = IsoChronology.INSTANCE; //TODO: Chronology.from(partialTemporal); // defaults to ISO\n if (this._rangeUnit === ChronoUnit.MONTHS) { // week-of-month\n if (fieldValues.containsKey(ChronoField.MONTH_OF_YEAR) === false) {\n return null;\n }\n const value = fieldValues.remove(this);\n let date;\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n const month = fieldValues.get(ChronoField.MONTH_OF_YEAR);\n date = LocalDate.of(year, 1, 1); // TODO: chrono.date(year, 1, 1);\n date = date.plus(month - 1, ChronoUnit.MONTHS);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = value - this._localizedWeekOfMonth(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n const month = ChronoField.MONTH_OF_YEAR.checkValidIntValue(fieldValues.get(ChronoField.MONTH_OF_YEAR));\n date = LocalDate.of(year, month, 8); // TODO: chrono.date(year, month, 8);\n const dateDow = this._localizedDayOfWeek(date, sow);\n const wom = this._range.checkValidIntValue(value, this);\n const weeks = wom - this._localizedWeekOfMonth(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(ChronoField.MONTH_OF_YEAR) !== fieldValues.get(ChronoField.MONTH_OF_YEAR)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different month');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(ChronoField.YEAR);\n fieldValues.remove(ChronoField.MONTH_OF_YEAR);\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n } else if (this._rangeUnit === ChronoUnit.YEARS) { // week-of-year\n const value = fieldValues.remove(this);\n let date = LocalDate.of(year, 1, 1); // TODO: chrono.date(year, 1, 1);\n let days;\n if (resolverStyle === ResolverStyle.LENIENT) {\n const dateDow = this._localizedDayOfWeek(date, sow);\n const weeks = value - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n } else {\n const dateDow = this._localizedDayOfWeek(date, sow);\n const woy = this._range.checkValidIntValue(value, this);\n const weeks = woy - this._localizedWeekOfYear(date, dateDow);\n days = weeks * 7 + (dow - dateDow);\n }\n date = date.plus(days, ChronoUnit.DAYS);\n if (resolverStyle === ResolverStyle.STRICT) {\n if (date.getLong(ChronoField.YEAR) !== fieldValues.get(ChronoField.YEAR)) {\n throw new DateTimeException('Strict mode rejected date parsed to a different year');\n }\n }\n fieldValues.remove(this);\n fieldValues.remove(ChronoField.YEAR);\n fieldValues.remove(ChronoField.DAY_OF_WEEK);\n return date;\n } else {\n throw new IllegalStateException('unreachable');\n }\n }\n\n //-----------------------------------------------------------------------\n name() {\n return this._name;\n }\n\n baseUnit() {\n return this._baseUnit;\n }\n\n rangeUnit() {\n return this._rangeUnit;\n }\n\n range() {\n return this._range;\n }\n\n //-----------------------------------------------------------------------\n isDateBased() {\n return true;\n }\n\n isTimeBased() {\n return false;\n }\n\n isSupportedBy(temporal) {\n if (temporal.isSupported(ChronoField.DAY_OF_WEEK)) {\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return true;\n } else if (this._rangeUnit === ChronoUnit.MONTHS) {\n return temporal.isSupported(ChronoField.DAY_OF_MONTH);\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n return temporal.isSupported(ChronoField.DAY_OF_YEAR);\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return temporal.isSupported(ChronoField.EPOCH_DAY);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return temporal.isSupported(ChronoField.EPOCH_DAY);\n }\n }\n return false;\n }\n\n rangeRefinedBy(temporal) {\n if (this._rangeUnit === ChronoUnit.WEEKS) {\n return this._range;\n }\n\n let field = null;\n if (this._rangeUnit === ChronoUnit.MONTHS) {\n field = ChronoField.DAY_OF_MONTH;\n } else if (this._rangeUnit === ChronoUnit.YEARS) {\n field = ChronoField.DAY_OF_YEAR;\n } else if (this._rangeUnit === IsoFields.WEEK_BASED_YEARS) {\n return this._rangeWOWBY(temporal);\n } else if (this._rangeUnit === ChronoUnit.FOREVER) {\n return temporal.range(ChronoField.YEAR);\n } else {\n throw new IllegalStateException('unreachable');\n }\n\n // Offset the ISO DOW by the start of this week\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n\n const offset = this._startOfWeekOffset(temporal.get(field), dow);\n const fieldRange = temporal.range(field);\n return ValueRange.of(ComputedDayOfField._computeWeek(offset, fieldRange.minimum()),\n ComputedDayOfField._computeWeek(offset, fieldRange.maximum()));\n }\n\n _rangeWOWBY(temporal) {\n const sow = this._weekDef.firstDayOfWeek().value();\n const isoDow = temporal.get(ChronoField.DAY_OF_WEEK);\n const dow = MathUtil.floorMod(isoDow - sow, 7) + 1;\n const woy = this._localizedWeekOfYear(temporal, dow);\n if (woy === 0) {\n // TODO: we use IsoChronology for now\n return this._rangeWOWBY(IsoChronology.INSTANCE.date(temporal).minus(2, ChronoUnit.WEEKS));\n // return this._rangeWOWBY(Chronology.from(temporal).date(temporal).minus(2, ChronoUnit.WEEKS));\n }\n const offset = this._startOfWeekOffset(temporal.get(ChronoField.DAY_OF_YEAR), dow);\n const year = temporal.get(ChronoField.YEAR);\n const yearLen = Year.isLeap(year) ? 366 : 365;\n const weekIndexOfFirstWeekNextYear = ComputedDayOfField._computeWeek(offset, yearLen + this._weekDef.minimalDaysInFirstWeek());\n if (woy >= weekIndexOfFirstWeekNextYear) {\n // TODO: we use IsoChronology for now\n return this._rangeWOWBY(IsoChronology.INSTANCE.date(temporal).plus(2, ChronoUnit.WEEKS));\n // return this._rangeWOWBY(Chronology.from(temporal).date(temporal).plus(2, ChronoUnit.WEEKS));\n }\n return ValueRange.of(1, weekIndexOfFirstWeekNextYear - 1);\n }\n\n getDisplayName(locale) {\n requireNonNull(locale, 'locale');\n if (this._rangeUnit === ChronoUnit.YEARS) { // week-of-year\n return 'Week';\n }\n return this.toString();\n }\n\n //-----------------------------------------------------------------------\n toString() {\n return this._name + '[' + this._weekDef.toString() + ']';\n }\n}\n\n/**\n * The cache of rules by firstDayOfWeek plus minimalDays.\n * Initialized first to be available for definition of ISO, etc.\n */\nconst WeekFieldsCache = new Map();\n\n\n/**\n * Localized definitions of the day-of-week, week-of-month and week-of-year fields.\n *

\n * A standard week is seven days long, but cultures have different definitions for some\n * other aspects of a week. This class represents the definition of the week, for the\n * purpose of providing {@link TemporalField} instances.\n *

\n * WeekFields provides three fields,\n * {@link #dayOfWeek()}, {@link #weekOfMonth()}, and {@link #weekOfYear()}\n * that provide access to the values from any {@link Temporal temporal object}.\n *

\n * The computations for day-of-week, week-of-month, and week-of-year are based\n * on the {@link ChronoField#YEAR proleptic-year},\n * {@link ChronoField#MONTH_OF_YEAR month-of-year},\n * {@link ChronoField#DAY_OF_MONTH day-of-month}, and\n * {@link ChronoField#DAY_OF_WEEK ISO day-of-week} which are based on the\n * {@link ChronoField#EPOCH_DAY epoch-day} and the chronology.\n * The values may not be aligned with the {@link ChronoField#YEAR_OF_ERA year-of-Era}\n * depending on the Chronology.\n *

A week is defined by:\n *

    \n *
  • The first day-of-week.\n * For example, the ISO-8601 standard considers Monday to be the first day-of-week.\n *
  • The minimal number of days in the first week.\n * For example, the ISO-8601 standard counts the first week as needing at least 4 days.\n *

\n * Together these two values allow a year or month to be divided into weeks.\n *

\n *

Week of Month

\n * One field is used: week-of-month.\n * The calculation ensures that weeks never overlap a month boundary.\n * The month is divided into periods where each period starts on the defined first day-of-week.\n * The earliest period is referred to as week 0 if it has less than the minimal number of days\n * and week 1 if it has at least the minimal number of days.\n *

\n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n * \n *
Examples of WeekFields
DateDay-of-weekFirst day: Monday
Minimal days: 4
First day: Monday
Minimal days: 5
2008-12-31WednesdayWeek 5 of December 2008Week 5 of December 2008
2009-01-01ThursdayWeek 1 of January 2009Week 0 of January 2009
2009-01-04SundayWeek 1 of January 2009Week 0 of January 2009
2009-01-05MondayWeek 2 of January 2009Week 1 of January 2009
\n *

\n *

Week of Year

\n * One field is used: week-of-year.\n * The calculation ensures that weeks never overlap a year boundary.\n * The year is divided into periods where each period starts on the defined first day-of-week.\n * The earliest period is referred to as week 0 if it has less than the minimal number of days\n * and week 1 if it has at least the minimal number of days.\n *

\n * This class is immutable and thread-safe.\n */\nexport class WeekFields {\n // implementation notes\n // querying week-of-month or week-of-year should return the week value bound within the month/year\n // however, setting the week value should be lenient (use plus/minus weeks)\n // allow week-of-month outer range [0 to 5]\n // allow week-of-year outer range [0 to 53]\n // this is because callers shouldn't be expected to know the details of validity\n\n /**\n * function overloading for {@link WeekFields#of}\n *\n * if called with 1 arguments then {@link WeekFields.ofLocale} is executed.\n *\n * Otherwise {@link WeekFields.ofFirstDayOfWeekMinDays} is executed.\n *\n * @param {!DayOfWeek | Locale} firstDayOrLocale\n * @param {Number} minDays\n * @returns {WeekFields} this for chaining\n */\n static of(firstDayOrLocale, minDays) {\n if (minDays === undefined) {\n return WeekFields.ofLocale(firstDayOrLocale);\n } else {\n return WeekFields.ofFirstDayOfWeekMinDays(firstDayOrLocale, minDays);\n }\n }\n\n /**\n * Obtains an instance of {@code WeekFields} appropriate for a locale.\n *

\n * This will look up appropriate values from the provider of localization data.\n *\n * @param {!Locale} locale the locale to use, not null\n * @return the week-definition, not null\n */\n static ofLocale(locale) {\n requireNonNull(locale, 'locale');\n\n Cldr.load(cldrData('supplemental/weekData.json'));\n const cldr = new Cldr(locale.localeString());\n const worldRegion = '001';\n const weekData = cldr.get('supplemental/weekData');\n let dow = _weekDayMap[weekData.firstDay[locale.country()]];\n if (!dow) {\n dow = _weekDayMap[weekData.firstDay[worldRegion]];\n }\n let minDays = weekData.minDays[locale.country()];\n if (!minDays) {\n minDays = weekData.minDays[worldRegion];\n }\n return WeekFields.ofFirstDayOfWeekMinDays(dow, minDays);\n }\n\n /**\n * Obtains an instance of {@code WeekFields} from the first day-of-week and minimal days.\n *

\n * The first day-of-week defines the ISO {@code DayOfWeek} that is day 1 of the week.\n * The minimal number of days in the first week defines how many days must be present\n * in a month or year, starting from the first day-of-week, before the week is counted\n * as the first week. A value of 1 will count the first day of the month or year as part\n * of the first week, whereas a value of 7 will require the whole seven days to be in\n * the new month or year.\n *

\n * WeekFields instances are singletons; for each unique combination\n * of {@code firstDayOfWeek} and {@code minimalDaysInFirstWeek} the\n * the same instance will be returned.\n *\n * @param {!DayOfWeek} firstDayOfWeek the first day of the week, not null\n * @param {!Number} minimalDaysInFirstWeek the minimal number of days in the first week, from\n * 1 to 7\n * @return {WeekFields} the week-definition, not null\n * @throws IllegalArgumentException if the minimal days value is less than one\n * or greater than 7\n */\n static ofFirstDayOfWeekMinDays(firstDayOfWeek, minimalDaysInFirstWeek) {\n requireNonNull(firstDayOfWeek, 'firstDayOfWeek');\n requireInstance(firstDayOfWeek, DayOfWeek, 'firstDayOfWeek');\n requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek');\n const key = firstDayOfWeek.toString() + minimalDaysInFirstWeek;\n let rules = WeekFieldsCache.get(key);\n if (rules == null) {\n rules = new WeekFields(firstDayOfWeek, minimalDaysInFirstWeek);\n WeekFieldsCache.set(key, rules);\n rules = WeekFieldsCache.get(key);\n }\n return rules;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Creates an instance of the definition.\n *\n * @param {!DayOfWeek} firstDayOfWeek the first day of the week, not null\n * @param {!Number} minimalDaysInFirstWeek the minimal number of days in the first week, from\n * 1 to 7\n * @throws IllegalArgumentException if the minimal days value is invalid\n *\n * @private\n */\n constructor(firstDayOfWeek, minimalDaysInFirstWeek) {\n requireNonNull(firstDayOfWeek, 'firstDayOfWeek');\n requireInstance(firstDayOfWeek, DayOfWeek, 'firstDayOfWeek');\n requireNonNull(minimalDaysInFirstWeek, 'minimalDaysInFirstWeek');\n if (minimalDaysInFirstWeek < 1 || minimalDaysInFirstWeek > 7) {\n throw new IllegalArgumentException('Minimal number of days is invalid');\n }\n this._firstDayOfWeek = firstDayOfWeek;\n this._minimalDays = minimalDaysInFirstWeek;\n this._dayOfWeek = ComputedDayOfField.ofDayOfWeekField(this);\n this._weekOfMonth = ComputedDayOfField.ofWeekOfMonthField(this);\n this._weekOfYear = ComputedDayOfField.ofWeekOfYearField(this);\n this._weekOfWeekBasedYear = ComputedDayOfField.ofWeekOfWeekBasedYearField(this);\n this._weekBasedYear = ComputedDayOfField.ofWeekBasedYearField(this);\n Cldr.load(cldrData('supplemental/likelySubtags.json'));\n }\n\n //-----------------------------------------------------------------------\n /**\n * Gets the first day-of-week.\n *

\n * The first day-of-week varies by culture.\n * For example, the US uses Sunday, while France and the ISO-8601 standard use Monday.\n * This method returns the first day using the standard {@code DayOfWeek} enum.\n *\n * @return {DayOfWeek} the first day-of-week, not null\n */\n firstDayOfWeek() {\n return this._firstDayOfWeek;\n }\n\n /**\n * Gets the minimal number of days in the first week.\n *

\n * The number of days considered to define the first week of a month or year\n * varies by culture.\n * For example, the ISO-8601 requires 4 days (more than half a week) to\n * be present before counting the first week.\n *\n * @return {Number} the minimal number of days in the first week of a month or year, from 1 to 7\n */\n minimalDaysInFirstWeek() {\n return this._minimalDays;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Returns a field to access the day of week based on this {@code WeekFields}.\n *

\n * This is similar to {@link ChronoField#DAY_OF_WEEK} but uses values for\n * the day-of-week based on this {@code WeekFields}.\n * The days are numbered from 1 to 7 where the\n * {@link #getFirstDayOfWeek() first day-of-week} is assigned the value 1.\n *

\n * For example, if the first day-of-week is Sunday, then that will have the\n * value 1, with other days ranging from Monday as 2 to Saturday as 7.\n *

\n * In the resolving phase of parsing, a localized day-of-week will be converted\n * to a standardized {@code ChronoField} day-of-week.\n * The day-of-week must be in the valid range 1 to 7.\n * Other fields in this class build dates using the standardized day-of-week.\n *\n * @return {TemporalField} a field providing access to the day-of-week with localized\n * numbering, not null\n */\n dayOfWeek() {\n return this._dayOfWeek;\n }\n\n /**\n * Returns a field to access the week of month based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the month where weeks\n * start on a fixed day-of-week, such as Monday.\n * This field is typically used with {@link WeekFields#dayOfWeek()}.\n *

\n * Week one (1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the month.\n * Thus, week one may start up to {@code minDays} days before the start of the month.\n * If the first week starts after the start of the month then the period before is week zero\n * (0).\n *

\n * For example:
\n * - if the 1st day of the month is a Monday, week one starts on the 1st and there is no week\n * zero
\n * - if the 2nd day of the month is a Monday, week one starts on the 2nd and the 1st is in week\n * zero
\n * - if the 4th day of the month is a Monday, week one starts on the 4th and the 1st to 3rd is\n * in week zero
\n * - if the 5th day of the month is a Monday, week two starts on the 5th and the 1st to 4th is\n * in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a year,\n * week-of-month, month-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all four fields are\n * validated against their range of valid values. The week-of-month field\n * is validated to ensure that the resulting month is the month requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all four fields are\n * validated against their range of valid values. The week-of-month field\n * is validated from 0 to 6, meaning that the resulting date can be in a\n * different month to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following four stage approach.\n * First, create a date on the first day of the first week of January in the requested year.\n * Then take the month-of-year, subtract one, and add the amount in months to the date.\n * Then take the week-of-month, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-month, not null\n */\n weekOfMonth() {\n return this._weekOfMonth;\n }\n\n /**\n * Returns a field to access the week of year based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the year where weeks\n * start on a fixed day-of-week, such as Monday.\n * This field is typically used with {@link WeekFields#dayOfWeek()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * Thus, week one may start up to {@code minDays} days before the start of the year.\n * If the first week starts after the start of the year then the period before is week zero\n * (0).\n *

\n * For example:
\n * - if the 1st day of the year is a Monday, week one starts on the 1st and there is no week\n * zero
\n * - if the 2nd day of the year is a Monday, week one starts on the 2nd and the 1st is in week\n * zero
\n * - if the 4th day of the year is a Monday, week one starts on the 4th and the 1st to 3rd is\n * in week zero
\n * - if the 5th day of the year is a Monday, week two starts on the 5th and the 1st to 4th is\n * in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting year is the year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated from 0 to 54, meaning that the resulting date can be in a\n * different year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested year.\n * Then take the week-of-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-year, not null\n */\n weekOfYear() {\n return this._weekOfYear;\n }\n\n /**\n * Returns a field to access the week of a week-based-year based on this {@code WeekFields}.\n *

\n * This represents the concept of the count of weeks within the year where weeks\n * start on a fixed day-of-week, such as Monday and each week belongs to exactly one year.\n * This field is typically used with {@link WeekFields#dayOfWeek()} and\n * {@link WeekFields#weekBasedYear()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * If the first week starts after the start of the year then the period before\n * is in the last week of the previous year.\n *

\n * For example:
\n * - if the 1st day of the year is a Monday, week one starts on the 1st
\n * - if the 2nd day of the year is a Monday, week one starts on the 2nd and\n * the 1st is in the last week of the previous year
\n * - if the 4th day of the year is a Monday, week one starts on the 4th and\n * the 1st to 3rd is in the last week of the previous year
\n * - if the 5th day of the year is a Monday, week two starts on the 5th and\n * the 1st to 4th is in week one
\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a week-based-year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting week-based-year is the\n * week-based-year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-week-based-year field\n * is validated from 1 to 53, meaning that the resulting date can be in the\n * following week-based-year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested week-based-year.\n * Then take the week-of-week-based-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-of-week-based-year, not null\n */\n weekOfWeekBasedYear() {\n return this._weekOfWeekBasedYear;\n }\n\n /**\n * Returns a field to access the year of a week-based-year based on this {@code WeekFields}.\n *

\n * This represents the concept of the year where weeks start on a fixed day-of-week,\n * such as Monday and each week belongs to exactly one year.\n * This field is typically used with {@link WeekFields#dayOfWeek()} and\n * {@link WeekFields#weekOfWeekBasedYear()}.\n *

\n * Week one(1) is the week starting on the {@link WeekFields#firstDayOfWeek}\n * where there are at least {@link WeekFields#getMinimalDaysInFirstWeek()} days in the year.\n * Thus, week one may start before the start of the year.\n * If the first week starts after the start of the year then the period before\n * is in the last week of the previous year.\n *

\n * This field can be used with any calendar system.\n *

\n * In the resolving phase of parsing, a date can be created from a week-based-year,\n * week-of-year and day-of-week.\n *

\n * In {@linkplain ResolverStyle#STRICT strict mode}, all three fields are\n * validated against their range of valid values. The week-of-year field\n * is validated to ensure that the resulting week-based-year is the\n * week-based-year requested.\n *

\n * In {@linkplain ResolverStyle#SMART smart mode}, all three fields are\n * validated against their range of valid values. The week-of-week-based-year field\n * is validated from 1 to 53, meaning that the resulting date can be in the\n * following week-based-year to that specified.\n *

\n * In {@linkplain ResolverStyle#LENIENT lenient mode}, the year and day-of-week\n * are validated against the range of valid values. The resulting date is calculated\n * equivalent to the following three stage approach.\n * First, create a date on the first day of the first week in the requested week-based-year.\n * Then take the week-of-week-based-year, subtract one, and add the amount in weeks to the date.\n * Finally, adjust to the correct day-of-week within the localized week.\n *\n * @return {TemporalField} a field providing access to the week-based-year, not null\n */\n weekBasedYear() {\n return this._weekBasedYear;\n }\n\n //-----------------------------------------------------------------------\n /**\n * Checks if this {@code WeekFields} is equal to the specified object.\n *

\n * The comparison is based on the entire state of the rules, which is\n * the first day-of-week and minimal days.\n *\n * @param {*} object the other rules to compare to, null returns false\n * @return true if this is equal to the specified rules\n */\n equals(object) {\n if (this === object) {\n return true;\n }\n if (object instanceof WeekFields) {\n return this.hashCode() === object.hashCode();\n }\n return false;\n }\n\n /**\n * A hash code for this {@code WeekFields}.\n *\n * @return a suitable hash code\n */\n hashCode() {\n return this._firstDayOfWeek.ordinal() * 7 + this._minimalDays;\n }\n\n //-----------------------------------------------------------------------\n /**\n * A string representation of this {@code WeekFields} instance.\n *\n * @return the string representation, not null\n */\n toString() {\n return 'WeekFields[' + this._firstDayOfWeek + ',' + this._minimalDays + ']';\n }\n\n}\n\nexport function _init() {\n /**\n * The ISO-8601 definition, where a week starts on Monday and the first week\n * has a minimum of 4 days.\n *

\n * The ISO-8601 standard defines a calendar system based on weeks.\n * It uses the week-based-year and week-of-week-based-year concepts to split\n * up the passage of days instead of the standard year/month/day.\n *

\n * Note that the first week may start in the previous calendar year.\n * Note also that the first few days of a calendar year may be in the\n * week-based-year corresponding to the previous calendar year.\n */\n WeekFields.ISO = WeekFields.of(DayOfWeek.MONDAY, 4);\n\n /**\n * The common definition of a week that starts on Sunday.\n *

\n * Defined as starting on Sunday and with a minimum of 1 day in the month.\n * This week definition is in use in the US and other European countries.\n *\n */\n WeekFields.SUNDAY_START = WeekFields.of(DayOfWeek.SUNDAY, 1);\n\n}\n","/*\n * @copyright (c) 2018, Philipp Thuerwaechter & Pattrick Hueper\n * @license BSD-3-Clause (see LICENSE.md in the root directory of this source tree)\n */\n\n/* since the npm cldrData load is using `fs` and other modules not available in browser,\n * we define our own cldrData \"load\" function that just `requires` a cldr-data file\n */\n\n/* NOTE: the path is relative to the installed js-joda-locale package and assuming,\n * that cldr-data is installed in parallel!\n */\nmodule.exports = function (cldrPath) {\n return require('../node_modules/cldr-data/' + cldrPath);\n};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_js_joda__;"],"sourceRoot":""} \ No newline at end of file