All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.squarespace.cldr.dates._CalendarFormatter_zu Maven / Gradle / Ivy

//
//
// AUTO-GENERATED CLASS - DO NOT EDIT
//
//
package com.squarespace.cldr.dates;

import com.squarespace.cldr.CLDR;
import java.lang.Override;
import java.lang.String;
import java.lang.StringBuilder;
import java.time.ZonedDateTime;
import java.util.HashMap;

/**
 * Locale "zu"
 * See http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
 */
public class _CalendarFormatter_zu extends CalendarFormatterBase {
  public _CalendarFormatter_zu() {
    this.bundleId = CLDR.Locale.zu;
    this.firstDay = 1;
    this.minDays = 1;
    this.eras = new FieldVariants(
          new String[] {"BC", "AD"}, 
          new String[] {"BC", "AD"}, 
          new String[] {}, 
          new String[] {"BC", "AD"});
    this.quartersFormat = new FieldVariants(
          new String[] {"Q1", "Q2", "Q3", "Q4"}, 
          new String[] {"1", "2", "3", "4"}, 
          new String[] {}, 
          new String[] {"ikota yesi-1", "ikota yesi-2", "ikota yesi-3", "ikota yesi-4"});
    this.quartersStandalone = new FieldVariants(
          new String[] {"Q1", "Q2", "Q3", "Q4"}, 
          new String[] {"1", "2", "3", "4"}, 
          new String[] {}, 
          new String[] {"ikota yesi-1", "ikota yesi-2", "ikota yesi-3", "ikota yesi-4"});
    this.monthsFormat = new FieldVariants(
          new String[] {"Jan", "Feb", "Mas", "Eph", "Mey", "Jun", "Jul", "Aga", "Sep", "Okt", "Nov", "Dis"}, 
          new String[] {"J", "F", "M", "E", "M", "J", "J", "A", "S", "O", "N", "D"}, 
          new String[] {}, 
          new String[] {"UMasingana", "Februwari", "Mashi", "Ephreli", "Meyi", "Juni", "Julayi", "Agasti", "Septhemba", "Okthoba", "Novemba", "Disemba"});
    this.monthsStandalone = new FieldVariants(
          new String[] {"Jan", "Feb", "Mas", "Eph", "Mey", "Jun", "Jul", "Aga", "Sep", "Okt", "Nov", "Dis"}, 
          new String[] {"J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"}, 
          new String[] {}, 
          new String[] {"Januwari", "Februwari", "Mashi", "Ephreli", "Meyi", "Juni", "Julayi", "Agasti", "Septhemba", "Okthoba", "Novemba", "Disemba"});
    this.weekdaysFormat = new FieldVariants(
          new String[] {"Son", "Mso", "Bil", "Tha", "Sin", "Hla", "Mgq"}, 
          new String[] {"S", "M", "B", "T", "S", "H", "M"}, 
          new String[] {"Son", "Mso", "Bil", "Tha", "Sin", "Hla", "Mgq"}, 
          new String[] {"ISonto", "UMsombuluko", "ULwesibili", "ULwesithathu", "ULwesine", "ULwesihlanu", "UMgqibelo"});
    this.weekdaysStandalone = new FieldVariants(
          new String[] {"Son", "Mso", "Bil", "Tha", "Sin", "Hla", "Mgq"}, 
          new String[] {"S", "M", "B", "T", "S", "H", "M"}, 
          new String[] {"Son", "Mso", "Bil", "Tha", "Sin", "Hla", "Mgq"}, 
          new String[] {"ISonto", "UMsombuluko", "ULwesibili", "ULwesithathu", "ULwesine", "ULwesihlanu", "UMgqibelo"});
    this.dayPeriodsFormat = new FieldVariants(
          new String[] {"AM", "PM"}, 
          new String[] {"a", "p"}, 
          new String[] {}, 
          new String[] {"AM", "PM"});
    this.dayPeriodsStandalone = new FieldVariants(
          new String[] {"AM", "PM"}, 
          new String[] {"a", "p"}, 
          new String[] {}, 
          new String[] {"AM", "PM"});
    this.exemplarCities = new HashMap() { {
      put("America/Adak", "i-Adak");
      put("America/Anchorage", "i-Anchorage");
      put("America/Anguilla", "i-Anguilla");
      put("America/Antigua", "i-Antigua");
      put("America/Araguaina", "i-Araguaina");
      put("America/Argentina/Rio_Gallegos", "i-Rio Gallegos");
      put("America/Argentina/San_Juan", "i-San Juan");
      put("America/Argentina/Ushuaia", "i-Ushuaia");
      put("America/Argentina/La_Rioja", "i-La Rioja");
      put("America/Argentina/San_Luis", "i-San Luis");
      put("America/Argentina/Salta", "i-Salta");
      put("America/Argentina/Tucuman", "i-Tucuman");
      put("America/Aruba", "i-Aruba");
      put("America/Asuncion", "i-Asunción");
      put("America/Bahia", "i-Bahia");
      put("America/Bahia_Banderas", "i-Bahia Banderas");
      put("America/Barbados", "i-Barbados");
      put("America/Belem", "i-Belem");
      put("America/Belize", "i-Belize");
      put("America/Blanc-Sablon", "i-Blanc-Sablon");
      put("America/Boa_Vista", "i-Boa Vista");
      put("America/Bogota", "i-Bogota");
      put("America/Boise", "i-Boise");
      put("America/Buenos_Aires", "i-Buenos Aires");
      put("America/Cambridge_Bay", "i-Cambridge Bay");
      put("America/Campo_Grande", "i-Campo Grande");
      put("America/Cancun", "i-Cancun");
      put("America/Caracas", "i-Caracas");
      put("America/Catamarca", "i-Catamarca");
      put("America/Cayenne", "i-Cayenne");
      put("America/Cayman", "i-Cayman");
      put("America/Chicago", "i-Chicago");
      put("America/Chihuahua", "i-Chihuahua");
      put("America/Coral_Harbour", "i-Atikokan");
      put("America/Cordoba", "i-Cordoba");
      put("America/Costa_Rica", "i-Costa Rica");
      put("America/Creston", "i-Creston");
      put("America/Cuiaba", "i-Cuiaba");
      put("America/Curacao", "i-Curaçao");
      put("America/Danmarkshavn", "i-Danmarkshavn");
      put("America/Dawson", "i-Dawson");
      put("America/Dawson_Creek", "i-Dawson Creek");
      put("America/Denver", "i-Denver");
      put("America/Detroit", "i-Detroit");
      put("America/Dominica", "i-Dominica");
      put("America/Edmonton", "i-Edmonton");
      put("America/Eirunepe", "i-Eirunepe");
      put("America/El_Salvador", "i-El Salvador");
      put("America/Fort_Nelson", "i-Fort Nelson");
      put("America/Fortaleza", "i-Fortaleza");
      put("America/Glace_Bay", "i-Glace Bay");
      put("America/Godthab", "i-Nuuk");
      put("America/Goose_Bay", "i-Goose Bay");
      put("America/Grand_Turk", "i-Grand Turk");
      put("America/Grenada", "i-Grenada");
      put("America/Guadeloupe", "i-Guadeloupe");
      put("America/Guatemala", "i-Guatemala");
      put("America/Guayaquil", "i-Guayaquil");
      put("America/Guyana", "i-Guyana");
      put("America/Halifax", "i-Halifax");
      put("America/Havana", "i-Havana");
      put("America/Hermosillo", "i-Hermosillo");
      put("America/Indiana/Vincennes", "i-Vincennes, Indiana");
      put("America/Indiana/Petersburg", "i-Petersburg, Indiana");
      put("America/Indiana/Tell_City", "i-Tell City, Indiana");
      put("America/Indiana/Knox", "i-Knox, Indiana");
      put("America/Indiana/Winamac", "i-Winamac, Indiana");
      put("America/Indiana/Marengo", "i-Marengo, Indiana");
      put("America/Indiana/Vevay", "i-Vevay, Indiana");
      put("America/Indianapolis", "i-Indianapolis");
      put("America/Inuvik", "i-Inuvik");
      put("America/Iqaluit", "i-Iqaluit");
      put("America/Jamaica", "i-Jamaica");
      put("America/Jujuy", "i-Jujuy");
      put("America/Juneau", "i-Juneau");
      put("America/Kentucky/Monticello", "i-Monticello, Kentucky");
      put("America/Kralendijk", "i-Kralendijk");
      put("America/La_Paz", "i-La Paz");
      put("America/Lima", "i-Lima");
      put("America/Los_Angeles", "i-Los Angeles");
      put("America/Louisville", "i-Louisville");
      put("America/Lower_Princes", "i-Lower Prince’s Quarter");
      put("America/Maceio", "i-Maceio");
      put("America/Managua", "i-Managua");
      put("America/Manaus", "i-Manaus");
      put("America/Marigot", "i-Marigot");
      put("America/Martinique", "i-Martinique");
      put("America/Matamoros", "i-Matamoros");
      put("America/Mazatlan", "i-Mazatlan");
      put("America/Mendoza", "i-Mendoza");
      put("America/Menominee", "i-Menominee");
      put("America/Merida", "i-Merida");
      put("America/Metlakatla", "i-Metlakatla");
      put("America/Mexico_City", "i-Mexico City");
      put("America/Miquelon", "i-Miquelon");
      put("America/Moncton", "i-Moncton");
      put("America/Monterrey", "i-Monterrey");
      put("America/Montevideo", "i-Montevideo");
      put("America/Montserrat", "i-Montserrat");
      put("America/Nassau", "i-Nassau");
      put("America/New_York", "i-New York");
      put("America/Nipigon", "i-Nipigon");
      put("America/Nome", "i-Nome");
      put("America/Noronha", "i-Noronha");
      put("America/North_Dakota/Beulah", "i-Beulah, North Dakota");
      put("America/North_Dakota/New_Salem", "i-New Salem, North Dakota");
      put("America/North_Dakota/Center", "i-Center, North Dakota");
      put("America/Ojinaga", "i-Ojinaga");
      put("America/Panama", "i-Panama");
      put("America/Pangnirtung", "i-Pangnirtung");
      put("America/Paramaribo", "i-Paramaribo");
      put("America/Phoenix", "i-Phoenix");
      put("America/Port-au-Prince", "i-Port-au-Prince");
      put("America/Port_of_Spain", "i-Port of Spain");
      put("America/Porto_Velho", "i-Porto Velho");
      put("America/Puerto_Rico", "i-Puerto Rico");
      put("America/Rainy_River", "i-Rainy River");
      put("America/Rankin_Inlet", "i-Rankin Inlet");
      put("America/Recife", "i-Recife");
      put("America/Regina", "i-Regina");
      put("America/Resolute", "i-Resolute");
      put("America/Rio_Branco", "i-Rio Branco");
      put("America/Santa_Isabel", "i-Santa Isabel");
      put("America/Santarem", "i-Santarem");
      put("America/Santiago", "i-Santiago");
      put("America/Santo_Domingo", "i-Santo Domingo");
      put("America/Sao_Paulo", "i-Sao Paulo");
      put("America/Scoresbysund", "i-Ittoqqortoormiit");
      put("America/Sitka", "i-Sitka");
      put("America/St_Barthelemy", "i-St. Barthélemy");
      put("America/St_Johns", "i-St. John’s");
      put("America/St_Kitts", "i-St. Kitts");
      put("America/St_Lucia", "i-");
      put("America/St_Thomas", "i-St. Thomas");
      put("America/St_Vincent", "i-St. Vincent");
      put("America/Swift_Current", "i-Swift Current");
      put("America/Tegucigalpa", "i-Tegucigalpa");
      put("America/Thule", "i-Thule");
      put("America/Thunder_Bay", "i-Thunder Bay");
      put("America/Tijuana", "i-Tijuana");
      put("America/Toronto", "i-Toronto");
      put("America/Tortola", "i-Tortola");
      put("America/Vancouver", "i-Vancouver");
      put("America/Whitehorse", "i-Whitehorse");
      put("America/Winnipeg", "i-Winnipeg");
      put("America/Yakutat", "i-Yakutat");
      put("America/Yellowknife", "i-Yellowknife");
      put("Atlantic/Azores", "i-Azores");
      put("Atlantic/Bermuda", "i-Bermuda");
      put("Atlantic/Canary", "i-Canary");
      put("Atlantic/Cape_Verde", "i-Cape Verde");
      put("Atlantic/Faeroe", "i-Faroe");
      put("Atlantic/Madeira", "i-Madeira");
      put("Atlantic/Reykjavik", "i-Reykjavik");
      put("Atlantic/South_Georgia", "i-South Georgia");
      put("Atlantic/St_Helena", "i-St. Helena");
      put("Atlantic/Stanley", "i-Stanley");
      put("Europe/Amsterdam", "i-Amsterdam");
      put("Europe/Andorra", "i-Andorra");
      put("Europe/Astrakhan", "i-Astrakhan");
      put("Europe/Athens", "i-Athens");
      put("Europe/Belgrade", "i-Belgrade");
      put("Europe/Berlin", "i-Berlin");
      put("Europe/Bratislava", "i-Bratislava");
      put("Europe/Brussels", "i-Brussels");
      put("Europe/Bucharest", "i-Bucharest");
      put("Europe/Budapest", "i-Budapest");
      put("Europe/Busingen", "i-Busingen");
      put("Europe/Chisinau", "i-Chisinau");
      put("Europe/Copenhagen", "i-Copenhagen");
      put("Europe/Dublin", "i-Dublin");
      put("Europe/Gibraltar", "i-Gibraltar");
      put("Europe/Guernsey", "i-Guernsey");
      put("Europe/Helsinki", "i-Helsinki");
      put("Europe/Isle_of_Man", "i-Isle of Man");
      put("Europe/Istanbul", "i-Istanbul");
      put("Europe/Jersey", "i-Jersey");
      put("Europe/Kaliningrad", "i-Kaliningrad");
      put("Europe/Kiev", "i-Kiev");
      put("Europe/Kirov", "i-Kirov");
      put("Europe/Lisbon", "i-Lisbon");
      put("Europe/Ljubljana", "i-Ljubljana");
      put("Europe/London", "i-London");
      put("Europe/Luxembourg", "i-Luxembourg");
      put("Europe/Madrid", "i-Madrid");
      put("Europe/Malta", "i-Malta");
      put("Europe/Mariehamn", "i-Mariehamn");
      put("Europe/Minsk", "i-Minsk");
      put("Europe/Monaco", "i-Monaco");
      put("Europe/Moscow", "i-Moscow");
      put("Europe/Oslo", "i-Oslo");
      put("Europe/Paris", "i-Paris");
      put("Europe/Podgorica", "i-Podgorica");
      put("Europe/Prague", "i-Prague");
      put("Europe/Riga", "i-Riga");
      put("Europe/Rome", "i-Rome");
      put("Europe/Samara", "i-Samara");
      put("Europe/San_Marino", "i-San Marino");
      put("Europe/Sarajevo", "i-Sarajevo");
      put("Europe/Simferopol", "i-Simferopol");
      put("Europe/Skopje", "i-Skopje");
      put("Europe/Sofia", "i-Sofia");
      put("Europe/Stockholm", "i-Stockholm");
      put("Europe/Tallinn", "i-Tallinn");
      put("Europe/Tirane", "i-Tirane");
      put("Europe/Ulyanovsk", "i-Ulyanovsk");
      put("Europe/Uzhgorod", "i-Uzhhorod");
      put("Europe/Vaduz", "i-Vaduz");
      put("Europe/Vatican", "i-Vatican");
      put("Europe/Vienna", "i-Vienna");
      put("Europe/Vilnius", "i-Vilnius");
      put("Europe/Volgograd", "i-Volgograd");
      put("Europe/Warsaw", "i-Warsaw");
      put("Europe/Zagreb", "i-Zagreb");
      put("Europe/Zaporozhye", "i-Zaporozhye");
      put("Europe/Zurich", "i-Zurich");
      put("Africa/Abidjan", "i-Abidjan");
      put("Africa/Accra", "i-Accra");
      put("Africa/Addis_Ababa", "i-Addis Ababa");
      put("Africa/Algiers", "i-Algiers");
      put("Africa/Asmera", "i-Asmara");
      put("Africa/Bamako", "i-Bamako");
      put("Africa/Bangui", "i-Bangui");
      put("Africa/Banjul", "i-Banjul");
      put("Africa/Bissau", "i-Bissau");
      put("Africa/Blantyre", "i-Blantyre");
      put("Africa/Brazzaville", "i-Brazzaville");
      put("Africa/Bujumbura", "i-Bujumbura");
      put("Africa/Cairo", "i-Cairo");
      put("Africa/Casablanca", "i-Casablanca");
      put("Africa/Ceuta", "i-Ceuta");
      put("Africa/Conakry", "i-Conakry");
      put("Africa/Dakar", "i-Dakar");
      put("Africa/Dar_es_Salaam", "i-Dar es Salaam");
      put("Africa/Djibouti", "i-Djibouti");
      put("Africa/Douala", "i-Douala");
      put("Africa/El_Aaiun", "i-El Aaiun");
      put("Africa/Freetown", "i-Freetown");
      put("Africa/Gaborone", "i-Gaborone");
      put("Africa/Harare", "i-Harare");
      put("Africa/Johannesburg", "i-Johannesburg");
      put("Africa/Juba", "iJuba");
      put("Africa/Kampala", "i-Kampala");
      put("Africa/Khartoum", "i-Khartoum");
      put("Africa/Kigali", "i-Kigali");
      put("Africa/Kinshasa", "i-Kinshasa");
      put("Africa/Lagos", "i-Lagos");
      put("Africa/Libreville", "i-Libreville");
      put("Africa/Lome", "i-Lome");
      put("Africa/Luanda", "i-Luanda");
      put("Africa/Lubumbashi", "i-Lubumbashi");
      put("Africa/Lusaka", "iLusaka");
      put("Africa/Malabo", "iMalabo");
      put("Africa/Maputo", "iMaputo");
      put("Africa/Maseru", "iMaseru");
      put("Africa/Mbabane", "iMbabane");
      put("Africa/Mogadishu", "i-Mogadishu");
      put("Africa/Monrovia", "i-Monrovia");
      put("Africa/Nairobi", "i-Nairobi");
      put("Africa/Ndjamena", "i-Ndjamena");
      put("Africa/Niamey", "i-Niamey");
      put("Africa/Nouakchott", "i-Nouakchott");
      put("Africa/Ouagadougou", "i-Ouagadougou");
      put("Africa/Porto-Novo", "i-Porto-Novo");
      put("Africa/Sao_Tome", "i-São Tomé");
      put("Africa/Tripoli", "i-Tripoli");
      put("Africa/Tunis", "i-Tunis");
      put("Africa/Windhoek", "i-Windhoek");
      put("Asia/Aden", "i-Aden");
      put("Asia/Almaty", "i-Almaty");
      put("Asia/Amman", "i-Amman");
      put("Asia/Anadyr", "i-Anadyr");
      put("Asia/Aqtau", "i-Aqtau");
      put("Asia/Aqtobe", "i-Aqtobe");
      put("Asia/Ashgabat", "i-Ashgabat");
      put("Asia/Baghdad", "i-Baghdad");
      put("Asia/Bahrain", "i-Bahrain");
      put("Asia/Baku", "i-Baku");
      put("Asia/Bangkok", "i-Bangkok");
      put("Asia/Barnaul", "i-Barnaul");
      put("Asia/Beirut", "i-Beirut");
      put("Asia/Bishkek", "i-Bishkek");
      put("Asia/Brunei", "i-Brunei");
      put("Asia/Calcutta", "i-Kolkata");
      put("Asia/Chita", "i-Chita");
      put("Asia/Choibalsan", "i-Choibalsan");
      put("Asia/Colombo", "i-Colombo");
      put("Asia/Damascus", "i-Damascus");
      put("Asia/Dhaka", "i-Dhaka");
      put("Asia/Dili", "i-Dili");
      put("Asia/Dubai", "i-Dubai");
      put("Asia/Dushanbe", "i-Dushanbe");
      put("Asia/Gaza", "iGaza");
      put("Asia/Hebron", "i-Hebron");
      put("Asia/Hong_Kong", "i-Hong Kong");
      put("Asia/Hovd", "i-Hovd");
      put("Asia/Irkutsk", "i-Irkutsk");
      put("Asia/Jakarta", "i-Jakarta");
      put("Asia/Jayapura", "i-Jayapura");
      put("Asia/Jerusalem", "i-Jerusalem");
      put("Asia/Kabul", "i-Kabul");
      put("Asia/Kamchatka", "i-Kamchatka");
      put("Asia/Karachi", "i-Karachi");
      put("Asia/Katmandu", "i-Kathmandu");
      put("Asia/Khandyga", "i-Khandyga");
      put("Asia/Krasnoyarsk", "i-Krasnoyarsk");
      put("Asia/Kuala_Lumpur", "i-Kuala Lumpur");
      put("Asia/Kuching", "i-Kuching");
      put("Asia/Kuwait", "i-Kuwait");
      put("Asia/Macau", "i-Macau");
      put("Asia/Magadan", "i-Magadan");
      put("Asia/Makassar", "i-Makassar");
      put("Asia/Manila", "i-Manila");
      put("Asia/Muscat", "i-Muscat");
      put("Asia/Nicosia", "i-Nicosia");
      put("Asia/Novokuznetsk", "i-Novokuznetsk");
      put("Asia/Novosibirsk", "i-Novosibirsk");
      put("Asia/Omsk", "i-Omsk");
      put("Asia/Oral", "i-Oral");
      put("Asia/Phnom_Penh", "i-Phnom Penh");
      put("Asia/Pontianak", "i-Pontianak");
      put("Asia/Pyongyang", "i-Pyongyang");
      put("Asia/Qatar", "i-Qatar");
      put("Asia/Qyzylorda", "i-Qyzylorda");
      put("Asia/Rangoon", "i-Rangoon");
      put("Asia/Riyadh", "i-Riyadh");
      put("Asia/Saigon", "i-Ho Chi Minh City");
      put("Asia/Sakhalin", "i-Sakhalin");
      put("Asia/Samarkand", "i-Samarkand");
      put("Asia/Seoul", "i-Seoul");
      put("Asia/Shanghai", "i-Shanghai");
      put("Asia/Singapore", "i-Singapore");
      put("Asia/Srednekolymsk", "i-Srednekolymsk");
      put("Asia/Taipei", "i-Taipei");
      put("Asia/Tashkent", "i-Tashkent");
      put("Asia/Tbilisi", "i-Tbilisi");
      put("Asia/Tehran", "i-Tehran");
      put("Asia/Thimphu", "i-Thimphu");
      put("Asia/Tokyo", "i-Tokyo");
      put("Asia/Tomsk", "i-Tomsk");
      put("Asia/Ulaanbaatar", "i-Ulaanbaatar");
      put("Asia/Urumqi", "i-Urumqi");
      put("Asia/Ust-Nera", "i-Ust-Nera");
      put("Asia/Vientiane", "i-Vientiane");
      put("Asia/Vladivostok", "i-Vladivostok");
      put("Asia/Yakutsk", "i-Yakutsk");
      put("Asia/Yekaterinburg", "i-Yekaterinburg");
      put("Asia/Yerevan", "i-Yerevan");
      put("Indian/Antananarivo", "i-Antananarivo");
      put("Indian/Chagos", "i-Chagos");
      put("Indian/Christmas", "i-Christmas");
      put("Indian/Cocos", "i-Cocos");
      put("Indian/Comoro", "i-Comoro");
      put("Indian/Kerguelen", "i-Kerguelen");
      put("Indian/Mahe", "iMahe");
      put("Indian/Maldives", "i-Maldives");
      put("Indian/Mauritius", "i-Mauritius");
      put("Indian/Mayotte", "i-Mayotte");
      put("Indian/Reunion", "i-Réunion");
      put("Australia/Adelaide", "i-Adelaide");
      put("Australia/Brisbane", "i-Brisbane");
      put("Australia/Broken_Hill", "i-Broken Hill");
      put("Australia/Currie", "i-Currie");
      put("Australia/Darwin", "i-Darwin");
      put("Australia/Eucla", "i-Eucla");
      put("Australia/Hobart", "i-Hobart");
      put("Australia/Lindeman", "i-Lindeman");
      put("Australia/Lord_Howe", "i-Lord Howe");
      put("Australia/Melbourne", "i-Melbourne");
      put("Australia/Perth", "i-Perth");
      put("Australia/Sydney", "i-Sydney");
      put("Pacific/Apia", "i-Apia");
      put("Pacific/Auckland", "i-Auckland");
      put("Pacific/Bougainville", "i-Bougainville");
      put("Pacific/Chatham", "i-Chatham");
      put("Pacific/Easter", "i-Easter");
      put("Pacific/Efate", "i-Efate");
      put("Pacific/Enderbury", "i-Enderbury");
      put("Pacific/Fakaofo", "i-Fakaofo");
      put("Pacific/Fiji", "i-Fiji");
      put("Pacific/Funafuti", "i-Funafuti");
      put("Pacific/Galapagos", "i-Galapagos");
      put("Pacific/Gambier", "i-Gambier");
      put("Pacific/Guadalcanal", "i-Guadalcanal");
      put("Pacific/Guam", "i-Guam");
      put("Pacific/Honolulu", "i-Honolulu");
      put("Pacific/Johnston", "i-Johnston");
      put("Pacific/Kiritimati", "i-Kiritimati");
      put("Pacific/Kosrae", "i-Kosrae");
      put("Pacific/Kwajalein", "i-Kwajalein");
      put("Pacific/Majuro", "i-Majuro");
      put("Pacific/Marquesas", "i-Marquesas");
      put("Pacific/Midway", "i-Midway");
      put("Pacific/Nauru", "i-Nauru");
      put("Pacific/Niue", "i-Niue");
      put("Pacific/Norfolk", "i-Norfolk");
      put("Pacific/Noumea", "i-Noumea");
      put("Pacific/Pago_Pago", "i-Pago Pago");
      put("Pacific/Palau", "i-Palau");
      put("Pacific/Pitcairn", "i-Pitcairn");
      put("Pacific/Ponape", "i-Pohnpei");
      put("Pacific/Port_Moresby", "i-Port Moresby");
      put("Pacific/Rarotonga", "i-Rarotonga");
      put("Pacific/Saipan", "i-Saipan");
      put("Pacific/Tahiti", "i-Tahiti");
      put("Pacific/Tarawa", "i-Tarawa");
      put("Pacific/Tongatapu", "i-Tongatapu");
      put("Pacific/Truk", "i-Chuuk");
      put("Pacific/Wake", "i-Wake");
      put("Pacific/Wallis", "i-Wallis");
      put("Arctic/Longyearbyen", "i-Longyearbyen");
      put("Antarctica/Casey", "i-Casey");
      put("Antarctica/Davis", "i-Davis");
      put("Antarctica/DumontDUrville", "i-Dumont d’Urville");
      put("Antarctica/Macquarie", "i-Macquarie");
      put("Antarctica/Mawson", "i-Mawson");
      put("Antarctica/McMurdo", "i-McMurdo");
      put("Antarctica/Palmer", "i-Palmer");
      put("Antarctica/Rothera", "i-Rothera");
      put("Antarctica/Syowa", "i-Syowa");
      put("Antarctica/Troll", "i-Troll");
      put("Antarctica/Vostok", "i-Vostok");
      put("Etc/GMT", "GMT");
      put("Etc/GMT1", "GMT+1");
      put("Etc/GMT10", "GMT+10");
      put("Etc/GMT11", "GMT+11");
      put("Etc/GMT12", "GMT+12");
      put("Etc/GMT2", "GMT+2");
      put("Etc/GMT3", "GMT+3");
      put("Etc/GMT4", "GMT+4");
      put("Etc/GMT5", "GMT+5");
      put("Etc/GMT6", "GMT+6");
      put("Etc/GMT7", "GMT+7");
      put("Etc/GMT8", "GMT+8");
      put("Etc/GMT9", "GMT+9");
      put("Etc/GMT-1", "GMT-1");
      put("Etc/GMT-10", "GMT-10");
      put("Etc/GMT-11", "GMT-11");
      put("Etc/GMT-12", "GMT-12");
      put("Etc/GMT-13", "GMT-13");
      put("Etc/GMT-14", "GMT-14");
      put("Etc/GMT-2", "GMT-2");
      put("Etc/GMT-3", "GMT-3");
      put("Etc/GMT-4", "GMT-4");
      put("Etc/GMT-5", "GMT-5");
      put("Etc/GMT-6", "GMT-6");
      put("Etc/GMT-7", "GMT-7");
      put("Etc/GMT-8", "GMT-8");
      put("Etc/GMT-9", "GMT-9");
      put("Etc/UTC", "UTC");
      put("Etc/Unknown", "idolobha elingaziwa");
    } };

    this.timezoneNames = new HashMap() { {

      put("Europe/Dublin", new TimeZoneNames("Europe/Dublin",   new TimeZoneNames.Name(null, null, "isikhathi sase-Irish esivamile"),
        null));

      put("Europe/London", new TimeZoneNames("Europe/London",   new TimeZoneNames.Name(null, null, "isikhathi sase-British sasehlobo"),
        null));

      put("Etc/UTC", new TimeZoneNames("Etc/UTC",   null,
        new TimeZoneNames.Name(null, "UTC", null)));
    } };

    this.metazoneNames = new HashMap() { {

      put("Afghanistan", new TimeZoneNames("Afghanistan", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Afghanistan", null),
        null));

      put("Africa_Central", new TimeZoneNames("Africa_Central", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Central Africa", null),
        null));

      put("Africa_Eastern", new TimeZoneNames("Africa_Eastern", 
        new TimeZoneNames.Name(null, "Isikhathi saseMpumalanga Afrika", null),
        null));

      put("Africa_Southern", new TimeZoneNames("Africa_Southern", 
        new TimeZoneNames.Name(null, "Isikhathi esijwayelekile saseNingizimu Afrika", null),
        null));

      put("Africa_Western", new TimeZoneNames("Africa_Western", 
        new TimeZoneNames.Name("Isikhathi saseNtshonalanga Afrika", "Isikhathi esijwayelekile saseNtshonalanga Afrika", "Isikhathi sasehlobo saseNtshonalanga Afrika"),
        null));

      put("Alaska", new TimeZoneNames("Alaska", 
        new TimeZoneNames.Name("Isikhathi sase-Alaska", "Isikhathi sase-Alaska esijwayelekile", "Isikhathi sase-Alaska sasemini"),
        null));

      put("Amazon", new TimeZoneNames("Amazon", 
        new TimeZoneNames.Name("Isikhathi sase-Amazon", "Isikhathi sase-Amazon esijwayelekile", "Isikhathi sase-Amazon sasehlobo"),
        null));

      put("America_Central", new TimeZoneNames("America_Central", 
        new TimeZoneNames.Name("Isikhathi sase-North American Central", "Isikhathi sase-North American Central esijwayelekile", "Isikhathi sase-North American Central sasemini"),
        null));

      put("America_Eastern", new TimeZoneNames("America_Eastern", 
        new TimeZoneNames.Name("Isikhathi sase-North American East", "Isikhathi sase-North American East esijwayelekile", "Isikhathi sase-North American East sasemini"),
        null));

      put("America_Mountain", new TimeZoneNames("America_Mountain", 
        new TimeZoneNames.Name("Isikhathi sase-North American Mountain", "Isikhathi sase-North American Mountain esijwayelekile", "Isikhathi sase-North American Mountain sasemini"),
        null));

      put("America_Pacific", new TimeZoneNames("America_Pacific", 
        new TimeZoneNames.Name("Isikhathi sase-North American Pacific", "Isikhathi sase-North American Pacific esijwayelekile", "Isikhathi sase-North American Pacific sasemini"),
        null));

      put("Anadyr", new TimeZoneNames("Anadyr", 
        new TimeZoneNames.Name("esase-Anadyr Time", "esase-Anadyr Standard Time", "esase-Anadyr Summer Time"),
        null));

      put("Apia", new TimeZoneNames("Apia", 
        new TimeZoneNames.Name("Isikhathi sase-Apia", "Isikhathi sase-Apia esivamile", "Isikhathi sase-Apia sasemini"),
        null));

      put("Arabian", new TimeZoneNames("Arabian", 
        new TimeZoneNames.Name("Isikhathi sase-Arabian", "Isikhathi esivamile sase-Arabian", "Isikhathi semini sase-Arabian"),
        null));

      put("Argentina", new TimeZoneNames("Argentina", 
        new TimeZoneNames.Name("Isikhathi sase-Argentina", "Isikhathi sase-Argentina esijwayelekile", "Isikhathi sase-Argentina sasehlobo"),
        null));

      put("Argentina_Western", new TimeZoneNames("Argentina_Western", 
        new TimeZoneNames.Name("Isikhathi saseNyakatho ne-Argentina", "Isikhathi saseNyakatho ne-Argentina esijwayelekile", "Isikhathi saseNyakatho ne-Argentina sasehlobo"),
        null));

      put("Armenia", new TimeZoneNames("Armenia", 
        new TimeZoneNames.Name("Isikhathi saseArmenia", "Isikhathi esezingeni sase-Armenia", "Isikhathi sehlobo sase-Armenia"),
        null));

      put("Atlantic", new TimeZoneNames("Atlantic", 
        new TimeZoneNames.Name("Isikhathi sase-Atlantic", "Isikhathi sase-Atlantic esijwayelekile", "Isikhathi sase-Atlantic sasemini"),
        null));

      put("Australia_Central", new TimeZoneNames("Australia_Central", 
        new TimeZoneNames.Name("Isikhathi sase-Central Australia", "Isikhathi sase-Australian Central esivamile", "Isikhathi sase-Australian Central sasemini"),
        null));

      put("Australia_CentralWestern", new TimeZoneNames("Australia_CentralWestern", 
        new TimeZoneNames.Name("Isikhathi sase-Australian Central West", "Isikhathi sase-Australian Central West esivamile", "Isikhathi sasemini sase-Australian Central West"),
        null));

      put("Australia_Eastern", new TimeZoneNames("Australia_Eastern", 
        new TimeZoneNames.Name("Isikhathi sase-Eastern Australia", "Isikhathi esivamile sase-Australian East", "Isikhathi sasemini sase-Australian East"),
        null));

      put("Australia_Western", new TimeZoneNames("Australia_Western", 
        new TimeZoneNames.Name("Isikhathi sase-Western Australia", "Isikhathi sase-Australian Western esivamile", "Isikhathi sase-Australian Western sasemini"),
        null));

      put("Azerbaijan", new TimeZoneNames("Azerbaijan", 
        new TimeZoneNames.Name("Isikhathi sase-Azerbaijan", "Isikhathi esivamile sase-Azerbaijan", "Isikhathi sehlobo sase-Azerbaijan"),
        null));

      put("Azores", new TimeZoneNames("Azores", 
        new TimeZoneNames.Name("Isikhathi sase-Azores", "Isikhathi esijwayelekile sase-Azores", "Isikhathi sasehlobo sase-Azores"),
        null));

      put("Bangladesh", new TimeZoneNames("Bangladesh", 
        new TimeZoneNames.Name("Isikhathi sase-Bangladesh", "Isikhathi sase-Bangladesh esivamile", "Isikhathi sase-Bangladesh sasehlobo"),
        null));

      put("Bhutan", new TimeZoneNames("Bhutan", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Bhutan", null),
        null));

      put("Bolivia", new TimeZoneNames("Bolivia", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Bolivia", null),
        null));

      put("Brasilia", new TimeZoneNames("Brasilia", 
        new TimeZoneNames.Name("Isikhathi sase-Brasilia", "Isikhathi sase-Brasilia esijwayelekile", "Isikhathi sase-Brasilia sasehlobo"),
        null));

      put("Brunei", new TimeZoneNames("Brunei", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Brunei Darussalam", null),
        null));

      put("Cape_Verde", new TimeZoneNames("Cape_Verde", 
        new TimeZoneNames.Name("Isikhathi sase-Cape Verde", "Isikhathi esezingeni sase-Cape Verde", "Isikhathi sehlobo sase-Cape Verde"),
        null));

      put("Chamorro", new TimeZoneNames("Chamorro", 
        new TimeZoneNames.Name(null, "Isikhathi esijwayelekile sase-Chamorro", null),
        null));

      put("Chatham", new TimeZoneNames("Chatham", 
        new TimeZoneNames.Name("Isikhathi sase-Chatham", "Isikhathi esivamile sase-Chatham", "Isikhathi sasemini sase-Chatham"),
        null));

      put("Chile", new TimeZoneNames("Chile", 
        new TimeZoneNames.Name("Isikhathi sase-Chile", "Isikhathi sase-Chile esijwayelekile", "Isikhathi sase-Chile sasehlobo"),
        null));

      put("China", new TimeZoneNames("China", 
        new TimeZoneNames.Name("Isikhathi sase-China", "Isikhathi esivamile sase-China", "Isikhathi semini sase-China"),
        null));

      put("Choibalsan", new TimeZoneNames("Choibalsan", 
        new TimeZoneNames.Name("Isikhathi sase-Choibalsan", "Isikhathi Esimisiwe sase-Choibalsan", "Isikhathi sehlobo e-Choibalsan"),
        null));

      put("Christmas", new TimeZoneNames("Christmas", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Christmas Island", null),
        null));

      put("Cocos", new TimeZoneNames("Cocos", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Cocos Islands", null),
        null));

      put("Colombia", new TimeZoneNames("Colombia", 
        new TimeZoneNames.Name("Isikhathi sase-Colombia", "Isikhathi sase-Colombia esijwayelekile", "Isikhathi sase-Colombia sasehlobo"),
        null));

      put("Cook", new TimeZoneNames("Cook", 
        new TimeZoneNames.Name("Isikhathi sase-Cook Islands", "Isikhathi esivamile sase-Cook Islands", "Isikhathi esiyingxenye yasehlobo sase-Cook Islands"),
        null));

      put("Cuba", new TimeZoneNames("Cuba", 
        new TimeZoneNames.Name("Isikhathi sase-Cuba", "Isikhathi sase-Cuba esijwayelekile", "Isikhathi sase-Cuba sasemini"),
        null));

      put("Davis", new TimeZoneNames("Davis", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Davis", null),
        null));

      put("DumontDUrville", new TimeZoneNames("DumontDUrville", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Dumont-d’Urville", null),
        null));

      put("East_Timor", new TimeZoneNames("East_Timor", 
        new TimeZoneNames.Name(null, "Isikhathi sase-East Timor", null),
        null));

      put("Easter", new TimeZoneNames("Easter", 
        new TimeZoneNames.Name("Isikhathi sase-Easter Island", "Isikhathi sase-Easter Island esijwayelekile", "Isikhathi sase-Easter Island sasehlobo"),
        null));

      put("Ecuador", new TimeZoneNames("Ecuador", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Ecuador", null),
        null));

      put("Europe_Central", new TimeZoneNames("Europe_Central", 
        new TimeZoneNames.Name("Isikhathi sase-Central Europe", "Isikhathi esijwayelekile sase-Central Europe", "Isikhathi sasehlobo sase-Central Europe"),
        null));

      put("Europe_Eastern", new TimeZoneNames("Europe_Eastern", 
        new TimeZoneNames.Name("Isikhathi sase-Eastern Europe", "Isikhathi esijwayelekile sase-Eastern Europe", "Isikhathi sasehlobo sase-Eastern Europe"),
        null));

      put("Europe_Further_Eastern", new TimeZoneNames("Europe_Further_Eastern", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Further-eastern Europe", null),
        null));

      put("Europe_Western", new TimeZoneNames("Europe_Western", 
        new TimeZoneNames.Name("Isikhathi sase-Western Europe", "Isikhathi esijwayelekile sase-Western Europe", "Isikhathi sasehlobo sase-Western Europe"),
        null));

      put("Falkland", new TimeZoneNames("Falkland", 
        new TimeZoneNames.Name("Isikhathi sase-Falkland Islands", "Isikhathi sase-Falkland Islands esijwayelekile", "Isikhathi sase-Falkland Islands sasehlobo"),
        null));

      put("Fiji", new TimeZoneNames("Fiji", 
        new TimeZoneNames.Name("Isikhathi sase-Fiji", "Isikhathi esivamile sase-Fiji", "Isikhathi sehlobo sase-Fiji"),
        null));

      put("French_Guiana", new TimeZoneNames("French_Guiana", 
        new TimeZoneNames.Name(null, "Isikhathi sase-French Guiana", null),
        null));

      put("French_Southern", new TimeZoneNames("French_Southern", 
        new TimeZoneNames.Name(null, "Isikhathi sase-French Southern nase-Antarctic", null),
        null));

      put("Galapagos", new TimeZoneNames("Galapagos", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Galapagos", null),
        null));

      put("Gambier", new TimeZoneNames("Gambier", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Gambier", null),
        null));

      put("Georgia", new TimeZoneNames("Georgia", 
        new TimeZoneNames.Name("Isikhathi sase-Georgia", "Isikhathi esivamile sase-Georgia", "Isikhathi sehlobo sase-Georgia"),
        null));

      put("Gilbert_Islands", new TimeZoneNames("Gilbert_Islands", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Gilbert Islands", null),
        null));

      put("GMT", new TimeZoneNames("GMT", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Greenwich Mean", null),
        null));

      put("Greenland_Eastern", new TimeZoneNames("Greenland_Eastern", 
        new TimeZoneNames.Name("Isikhathi sase-East Greenland", "Isikhathi sase-East Greenland esijwayelekile", "Isikhathi sase-East Greenland sasemini"),
        null));

      put("Greenland_Western", new TimeZoneNames("Greenland_Western", 
        new TimeZoneNames.Name("Isikhathi sase-West Greenland", "Isikhathi sase-West Greenland esijwayelekile", "Isikhathi sase-West Greenland sasehlobo"),
        null));

      put("Gulf", new TimeZoneNames("Gulf", 
        new TimeZoneNames.Name(null, "Isikhathi esivamile sase-Gulf", null),
        null));

      put("Guyana", new TimeZoneNames("Guyana", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Guyana", null),
        null));

      put("Hawaii_Aleutian", new TimeZoneNames("Hawaii_Aleutian", 
        new TimeZoneNames.Name("Isikhathi sase-Hawaii-Aleutia", "Isikhathi sase-Hawaii-Aleutia esijwayelekile", "Isikhathi sase-Hawaii-Aleutia sasemini"),
        null));

      put("Hong_Kong", new TimeZoneNames("Hong_Kong", 
        new TimeZoneNames.Name("Isikhathi sase-Hong Kong", "Isikhathi esivamile sase-Hong Kong", "Isikhathi sehlobo sase-Hong Kong"),
        null));

      put("Hovd", new TimeZoneNames("Hovd", 
        new TimeZoneNames.Name("Isikhathi sase-Hovd", "Isikhathi Esimisiwe sase-Hovd", "Isikhathi sehlobo e-Hovd"),
        null));

      put("India", new TimeZoneNames("India", 
        new TimeZoneNames.Name(null, "Isikhathi sase-India esivamile", null),
        null));

      put("Indian_Ocean", new TimeZoneNames("Indian_Ocean", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Indian Ocean", null),
        null));

      put("Indochina", new TimeZoneNames("Indochina", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Indochina", null),
        null));

      put("Indonesia_Central", new TimeZoneNames("Indonesia_Central", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Central Indonesia", null),
        null));

      put("Indonesia_Eastern", new TimeZoneNames("Indonesia_Eastern", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Eastern Indonesia", null),
        null));

      put("Indonesia_Western", new TimeZoneNames("Indonesia_Western", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Western Indonesia", null),
        null));

      put("Iran", new TimeZoneNames("Iran", 
        new TimeZoneNames.Name("Isikhathi sase-Iran", "Isikhathi sase-Iran esivamile", "Isikhathi sase-Iran sasemini"),
        null));

      put("Irkutsk", new TimeZoneNames("Irkutsk", 
        new TimeZoneNames.Name("Isikhathi sase-Irkutsk", "Isikhathi Esimisiwe sase-Irkutsk", "Isikhathi sasehlobo e-Irkutsk"),
        null));

      put("Israel", new TimeZoneNames("Israel", 
        new TimeZoneNames.Name("Isikhathi sase-Israel", "Isikhathi esivamile sase-Israel", "Isikhathi sasemini sakwa-Israel"),
        null));

      put("Japan", new TimeZoneNames("Japan", 
        new TimeZoneNames.Name("Isikhathi sase-Japan", "Isikhathi esivamile sase-Japan", "Isikhathi semini sase-Japan"),
        null));

      put("Kamchatka", new TimeZoneNames("Kamchatka", 
        new TimeZoneNames.Name("esase-Petropavlovsk-Kamchatski Time", "esase-Petropavlovsk-Kamchatski Standard Time", "esase-Petropavlovsk-Kamchatski Summer Time"),
        null));

      put("Kazakhstan_Eastern", new TimeZoneNames("Kazakhstan_Eastern", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Mpumalanga ne-Kazakhstan", null),
        null));

      put("Kazakhstan_Western", new TimeZoneNames("Kazakhstan_Western", 
        new TimeZoneNames.Name(null, "Isikhathi saseNtshonalanga ne-Kazakhstan", null),
        null));

      put("Korea", new TimeZoneNames("Korea", 
        new TimeZoneNames.Name("Isikhathi sase-Korea", "Isikhathi esisezengeni sase-Korea", "Isikhathi semini sase-Korea"),
        null));

      put("Kosrae", new TimeZoneNames("Kosrae", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Kosrae", null),
        null));

      put("Krasnoyarsk", new TimeZoneNames("Krasnoyarsk", 
        new TimeZoneNames.Name("Isikhathi sase-Krasnoyarsk", "Isikhathi Esimisiwe sase-Krasnoyarsk", "Isikhathi sasehlobo e-Krasnoyarsk"),
        null));

      put("Kyrgystan", new TimeZoneNames("Kyrgystan", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Kyrgystan", null),
        null));

      put("Line_Islands", new TimeZoneNames("Line_Islands", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Line Islands", null),
        null));

      put("Lord_Howe", new TimeZoneNames("Lord_Howe", 
        new TimeZoneNames.Name("Isikhathi sase-Lord Howe", "Isikhathi sase-Lord Howe esivamile", "Isikhathi sase-Lord Howe sasemini"),
        null));

      put("Macquarie", new TimeZoneNames("Macquarie", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Macquarie Island", null),
        null));

      put("Magadan", new TimeZoneNames("Magadan", 
        new TimeZoneNames.Name("Isikhathi sase-Magadan", "Isikhathi Esimisiwe sase-Magadan", "Isikhathi sasehlobo e-Magadan"),
        null));

      put("Malaysia", new TimeZoneNames("Malaysia", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Malaysia", null),
        null));

      put("Maldives", new TimeZoneNames("Maldives", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Maldives", null),
        null));

      put("Marquesas", new TimeZoneNames("Marquesas", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Marquesas", null),
        null));

      put("Marshall_Islands", new TimeZoneNames("Marshall_Islands", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Marshall Islands", null),
        null));

      put("Mauritius", new TimeZoneNames("Mauritius", 
        new TimeZoneNames.Name("Isikhathi sase-Mauritius", "Isikhathi esivamile sase-Mauritius", "Isikhathi sehlobo sase-Mauritius"),
        null));

      put("Mawson", new TimeZoneNames("Mawson", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Mawson", null),
        null));

      put("Mexico_Northwest", new TimeZoneNames("Mexico_Northwest", 
        new TimeZoneNames.Name("Isikhathi sase-Northwest Mexico", "Isikhathi sase-Northwest Mexico esijwayelekile", "Isikhathi sase-Northwest Mexico sasemini"),
        null));

      put("Mexico_Pacific", new TimeZoneNames("Mexico_Pacific", 
        new TimeZoneNames.Name("Isikhathi sase-Mexican Pacific", "Isikhathi sase-Mexican Pacific esijwayelekile", "Isikhathi sase-Mexican Pacific sasemini"),
        null));

      put("Mongolia", new TimeZoneNames("Mongolia", 
        new TimeZoneNames.Name("Isikhathi sase-Ulan Bator", "Isikhathi Esimisiwe sase-Ulan Bator", "Isikhathi sehlobo e-Ulan Bator"),
        null));

      put("Moscow", new TimeZoneNames("Moscow", 
        new TimeZoneNames.Name("Isikhathi sase-Moscow", "Isikhathi sase-Moscow esijwayelekile", "Isikhathi sasehlobo e-Moscow"),
        null));

      put("Myanmar", new TimeZoneNames("Myanmar", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Myanmar", null),
        null));

      put("Nauru", new TimeZoneNames("Nauru", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Nauru", null),
        null));

      put("Nepal", new TimeZoneNames("Nepal", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Nepal", null),
        null));

      put("New_Caledonia", new TimeZoneNames("New_Caledonia", 
        new TimeZoneNames.Name("Isikhathi sase-New Caledonia", "Isikhathi sase-New Caledonia esijwayelekile", "Isikhathi sase-New Caledonia sasehlobo"),
        null));

      put("New_Zealand", new TimeZoneNames("New_Zealand", 
        new TimeZoneNames.Name("Isikhathi sase-New Zealand", "Isikhathi esivamile sase-New Zealand", "Isikhathi sasemini sase-New Zealand"),
        null));

      put("Newfoundland", new TimeZoneNames("Newfoundland", 
        new TimeZoneNames.Name("Isikhathi sase-Newfoundland", "Isikhathi sase-Newfoundland esijwayelekile", "Isikhathi sase-Newfoundland sasemini"),
        null));

      put("Niue", new TimeZoneNames("Niue", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Niue", null),
        null));

      put("Norfolk", new TimeZoneNames("Norfolk", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Norfolk Islands", null),
        null));

      put("Noronha", new TimeZoneNames("Noronha", 
        new TimeZoneNames.Name("Isikhathi sase-Fernando de Noronha", "Isikhathi sase-Fernando de Noronha esijwayelekile", "Isikhathi sase-Fernando de Noronha sasehlobo"),
        null));

      put("Novosibirsk", new TimeZoneNames("Novosibirsk", 
        new TimeZoneNames.Name("Isikhathi sase-Novosibirsk", "Isikhathi Esimisiwe sase-Novosibirsk", "Isikhathi sasehlobo sase-Novosibirsk"),
        null));

      put("Omsk", new TimeZoneNames("Omsk", 
        new TimeZoneNames.Name("Isikhathi sase-Omsk", "Isikhathi Esimisiwe sase-Omsk", "Isikhathi sasehlobo sase-Omsk"),
        null));

      put("Pakistan", new TimeZoneNames("Pakistan", 
        new TimeZoneNames.Name("Isikhathi sase-Pakistan", "Isikhathi sase-Pakistan esivamile", "Isikhathi sase-Pakistan sasehlobo"),
        null));

      put("Palau", new TimeZoneNames("Palau", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Palau", null),
        null));

      put("Papua_New_Guinea", new TimeZoneNames("Papua_New_Guinea", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Papua New Guinea", null),
        null));

      put("Paraguay", new TimeZoneNames("Paraguay", 
        new TimeZoneNames.Name("Isikhathi sase-Paraguay", "Isikhathi sase-Paraguay esijwayelekile", "Isikhathi sase-Paraguay sasehlobo"),
        null));

      put("Peru", new TimeZoneNames("Peru", 
        new TimeZoneNames.Name("Isikhathi sase-Peru", "Isikhathi sase-Peru esijwayelekile", "Isikhathi sase-Peru sasehlobo"),
        null));

      put("Philippines", new TimeZoneNames("Philippines", 
        new TimeZoneNames.Name("Isikhathi sase-Philippine", "Isikhathi esivamile sase-Philippine", "Isikhathi sehlobo sase-Philippine"),
        null));

      put("Phoenix_Islands", new TimeZoneNames("Phoenix_Islands", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Phoenix Islands", null),
        null));

      put("Pierre_Miquelon", new TimeZoneNames("Pierre_Miquelon", 
        new TimeZoneNames.Name("Isikhathi sase-Saint Pierre nase-Miquelon", "Iikhathi sase-Saint Pierre nase-Miquelon esijwayelekile", "Isikhathi sase-Saint Pierre nase-Miquelon sasemini"),
        null));

      put("Pitcairn", new TimeZoneNames("Pitcairn", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Pitcairn", null),
        null));

      put("Ponape", new TimeZoneNames("Ponape", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Ponape", null),
        null));

      put("Pyongyang", new TimeZoneNames("Pyongyang", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Pyongyang", null),
        null));

      put("Reunion", new TimeZoneNames("Reunion", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Reunion", null),
        null));

      put("Rothera", new TimeZoneNames("Rothera", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Rothera", null),
        null));

      put("Sakhalin", new TimeZoneNames("Sakhalin", 
        new TimeZoneNames.Name("Isikhathi sase-Sakhalin", "Isikhathi Esimisiwe sase-Sakhalin", "Isikhathi sasehlobo e-Sakhalin"),
        null));

      put("Samara", new TimeZoneNames("Samara", 
        new TimeZoneNames.Name("esase-Samara Time", "esase-Samara Standard Time", "esase-Samara Summer Time"),
        null));

      put("Samoa", new TimeZoneNames("Samoa", 
        new TimeZoneNames.Name("Isikhathi sase-Samoa", "Isikhathi sase-Samoa esijwayelekile", "Isikhathi sase-Samoa sasemini"),
        null));

      put("Seychelles", new TimeZoneNames("Seychelles", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Seychelles", null),
        null));

      put("Singapore", new TimeZoneNames("Singapore", 
        new TimeZoneNames.Name(null, "Isikhathi esivamile sase-Singapore", null),
        null));

      put("Solomon", new TimeZoneNames("Solomon", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Solomon Islands", null),
        null));

      put("South_Georgia", new TimeZoneNames("South_Georgia", 
        new TimeZoneNames.Name(null, "Isikhathi sase-South Georgia", null),
        null));

      put("Suriname", new TimeZoneNames("Suriname", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Suriname", null),
        null));

      put("Syowa", new TimeZoneNames("Syowa", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Syowa", null),
        null));

      put("Tahiti", new TimeZoneNames("Tahiti", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Tahiti", null),
        null));

      put("Taipei", new TimeZoneNames("Taipei", 
        new TimeZoneNames.Name("Isikhathi sase-Taipei", "Isikhathi esivamile sase-Taipei", "Isikhathi semini sase-Taipei"),
        null));

      put("Tajikistan", new TimeZoneNames("Tajikistan", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Tajikistan", null),
        null));

      put("Tokelau", new TimeZoneNames("Tokelau", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Tokelau", null),
        null));

      put("Tonga", new TimeZoneNames("Tonga", 
        new TimeZoneNames.Name("Isikhathi sase-Tonga", "Isikhathi sase-Tonga esijwayelekile", "Isikhathi sase-Tonga sasehlobo"),
        null));

      put("Truk", new TimeZoneNames("Truk", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Chuuk", null),
        null));

      put("Turkmenistan", new TimeZoneNames("Turkmenistan", 
        new TimeZoneNames.Name("Isikhathi sase-Turkmenistan", "Isikhathi esivamile sase-Turkmenistan", "Isikhathi sehlobo sase-Turkmenistan"),
        null));

      put("Tuvalu", new TimeZoneNames("Tuvalu", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Tuvalu", null),
        null));

      put("Uruguay", new TimeZoneNames("Uruguay", 
        new TimeZoneNames.Name("Isikhathi sase-Uruguay", "Isikhathi sase-Uruguay esijwayelekile", "Isikhathi sase-Uruguay sasehlobo"),
        null));

      put("Uzbekistan", new TimeZoneNames("Uzbekistan", 
        new TimeZoneNames.Name("Isikhathi sase-Uzbekistan", "Isikhathi esivamile sase-Uzbekistan", "Isikhathi sehlobo sase-Uzbekistan"),
        null));

      put("Vanuatu", new TimeZoneNames("Vanuatu", 
        new TimeZoneNames.Name("Isikhathi sase-Vanuatu", "Isikhathi sase-Vanuatu esijwayelekile", "Isikhathi sase-Vanuatu sasehlobo"),
        null));

      put("Venezuela", new TimeZoneNames("Venezuela", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Venezuela", null),
        null));

      put("Vladivostok", new TimeZoneNames("Vladivostok", 
        new TimeZoneNames.Name("Isikhathi sase-Vladivostok", "Isikhathi Esimisiwe sase-Vladivostok", "Isikhathi sasehlobo e-Vladivostok"),
        null));

      put("Volgograd", new TimeZoneNames("Volgograd", 
        new TimeZoneNames.Name("Isikhathi sase-Volgograd", "Isikhathi Esimisiwe sase-Volgograd", "Isikhathi sase-Volgograd sasehlobo"),
        null));

      put("Vostok", new TimeZoneNames("Vostok", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Vostok", null),
        null));

      put("Wake", new TimeZoneNames("Wake", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Wake Island", null),
        null));

      put("Wallis", new TimeZoneNames("Wallis", 
        new TimeZoneNames.Name(null, "Isikhathi sase-Wallis nase-Futuna", null),
        null));

      put("Yakutsk", new TimeZoneNames("Yakutsk", 
        new TimeZoneNames.Name("Isikhathi sase-Yakutsk", "Isikhathi Esimisiwe sase-Yakutsk", "Isikhathi sasehlobo e-Yakutsk"),
        null));

      put("Yekaterinburg", new TimeZoneNames("Yekaterinburg", 
        new TimeZoneNames.Name("Isikhathi sase-Yekaterinburg", "Isikhathi Esimisiwe sase-Yekaterinburg", "Isikhathi sasehlobo e-Yekaterinburg"),
        null));
    } };
  }

  @Override
  public void formatDate(CalendarFormat type, ZonedDateTime d, StringBuilder b) {
    if (type == null) {
      return;
    }
    switch (type) {
      case SHORT: {
        // "M/d/yy"
        formatField(d, 'M', 1, b);
        b.append("/");
        formatField(d, 'd', 1, b);
        b.append("/");
        formatField(d, 'y', 2, b);
        break;
      }
      case MEDIUM: {
        // "MMM d, y"
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'y', 1, b);
        break;
      }
      case LONG: {
        // "MMMM d, y"
        formatField(d, 'M', 4, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'y', 1, b);
        break;
      }
      case FULL: {
        // "EEEE, MMMM d, y"
        formatField(d, 'E', 4, b);
        b.append(", ");
        formatField(d, 'M', 4, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'y', 1, b);
        break;
      }
    }
  }

  @Override
  public void formatTime(CalendarFormat type, ZonedDateTime d, StringBuilder b) {
    if (type == null) {
      return;
    }
    switch (type) {
      case SHORT: {
        // "HH:mm"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        break;
      }
      case MEDIUM: {
        // "HH:mm:ss"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        break;
      }
      case LONG: {
        // "HH:mm:ss z"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'z', 1, b);
        break;
      }
      case FULL: {
        // "HH:mm:ss zzzz"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'z', 4, b);
        break;
      }
    }
  }

  @Override
  public void formatWrapped(CalendarFormat wrapperType, CalendarFormat dateType,
      CalendarFormat timeType, String dateSkel, String timeSkel, ZonedDateTime d, StringBuilder b) {
    switch (wrapperType) {
      case SHORT:
      case MEDIUM:
      case LONG:
      case FULL:
       {
        // "{1} {0}"
        if (dateType != null) {
          formatDate(dateType, d, b);
        } else {
          formatSkeleton(dateSkel, d, b);
        }
        b.append(" ");
        if (timeType != null) {
          formatTime(timeType, d, b);
        } else {
          formatSkeleton(timeSkel, d, b);
        }
        break;
      }
    }
  }

  @Override
  public boolean formatSkeleton(String skeleton, ZonedDateTime d, StringBuilder b) {
    if (skeleton == null) {
      return false;
    }
    switch (skeleton) {
      case "d": {
        // Pattern: "d"
        formatField(d, 'd', 1, b);
        break;
      }
      case "E": {
        // Pattern: "ccc"
        formatField(d, 'c', 3, b);
        break;
      }
      case "Ed": {
        // Pattern: "d E"
        formatField(d, 'd', 1, b);
        b.append(" ");
        formatField(d, 'E', 1, b);
        break;
      }
      case "Ehm": {
        // Pattern: "E h:mm a"
        formatField(d, 'E', 1, b);
        b.append(" ");
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        break;
      }
      case "EHm": {
        // Pattern: "E HH:mm"
        formatField(d, 'E', 1, b);
        b.append(" ");
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        break;
      }
      case "Ehms": {
        // Pattern: "E h:mm:ss a"
        formatField(d, 'E', 1, b);
        b.append(" ");
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        break;
      }
      case "EHms": {
        // Pattern: "E HH:mm:ss"
        formatField(d, 'E', 1, b);
        b.append(" ");
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        break;
      }
      case "Gy": {
        // Pattern: "G y"
        formatField(d, 'G', 1, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "GyMMM": {
        // Pattern: "G y MMM"
        formatField(d, 'G', 1, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        b.append(" ");
        formatField(d, 'M', 3, b);
        break;
      }
      case "GyMMMd": {
        // Pattern: "G y MMM d"
        formatField(d, 'G', 1, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        b.append(" ");
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        break;
      }
      case "GyMMMEd": {
        // Pattern: "G y MMM d, E"
        formatField(d, 'G', 1, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        b.append(" ");
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'E', 1, b);
        break;
      }
      case "h": {
        // Pattern: "h a"
        formatField(d, 'h', 1, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        break;
      }
      case "H": {
        // Pattern: "HH"
        formatField(d, 'H', 2, b);
        break;
      }
      case "hm": {
        // Pattern: "h:mm a"
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        break;
      }
      case "Hm": {
        // Pattern: "HH:mm"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        break;
      }
      case "hms": {
        // Pattern: "h:mm:ss a"
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        break;
      }
      case "Hms": {
        // Pattern: "HH:mm:ss"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        break;
      }
      case "hmsv": {
        // Pattern: "h:mm:ss a v"
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        b.append(" ");
        formatField(d, 'v', 1, b);
        break;
      }
      case "Hmsv": {
        // Pattern: "HH:mm:ss v"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        b.append(" ");
        formatField(d, 'v', 1, b);
        break;
      }
      case "hmv": {
        // Pattern: "h:mm a v"
        formatField(d, 'h', 1, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(" ");
        formatField(d, 'a', 1, b);
        b.append(" ");
        formatField(d, 'v', 1, b);
        break;
      }
      case "Hmv": {
        // Pattern: "HH:mm v"
        formatField(d, 'H', 2, b);
        b.append(":");
        formatField(d, 'm', 2, b);
        b.append(" ");
        formatField(d, 'v', 1, b);
        break;
      }
      case "M": {
        // Pattern: "L"
        formatField(d, 'L', 1, b);
        break;
      }
      case "Md": {
        // Pattern: "MM-dd"
        formatField(d, 'M', 2, b);
        b.append("-");
        formatField(d, 'd', 2, b);
        break;
      }
      case "MEd": {
        // Pattern: "MM-dd, E"
        formatField(d, 'M', 2, b);
        b.append("-");
        formatField(d, 'd', 2, b);
        b.append(", ");
        formatField(d, 'E', 1, b);
        break;
      }
      case "MMM": {
        // Pattern: "LLL"
        formatField(d, 'L', 3, b);
        break;
      }
      case "MMMd": {
        // Pattern: "MMM d"
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        break;
      }
      case "MMMEd": {
        // Pattern: "E, MMM d"
        formatField(d, 'E', 1, b);
        b.append(", ");
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        break;
      }
      case "MMMMd": {
        // Pattern: "MMMM d"
        formatField(d, 'M', 4, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        break;
      }
      case "MMMMW-count-one": {
        // Pattern: "'week' W 'of' MMM"
        b.append("week ");
        formatField(d, 'W', 1, b);
        b.append(" of ");
        formatField(d, 'M', 3, b);
        break;
      }
      case "MMMMW-count-other": {
        // Pattern: "'week' W 'of' MMM"
        b.append("week ");
        formatField(d, 'W', 1, b);
        b.append(" of ");
        formatField(d, 'M', 3, b);
        break;
      }
      case "ms": {
        // Pattern: "mm:ss"
        formatField(d, 'm', 2, b);
        b.append(":");
        formatField(d, 's', 2, b);
        break;
      }
      case "y": {
        // Pattern: "y"
        formatField(d, 'y', 1, b);
        break;
      }
      case "yM": {
        // Pattern: "y-MM"
        formatField(d, 'y', 1, b);
        b.append("-");
        formatField(d, 'M', 2, b);
        break;
      }
      case "yMd": {
        // Pattern: "y-MM-dd"
        formatField(d, 'y', 1, b);
        b.append("-");
        formatField(d, 'M', 2, b);
        b.append("-");
        formatField(d, 'd', 2, b);
        break;
      }
      case "yMEd": {
        // Pattern: "y-MM-dd, E"
        formatField(d, 'y', 1, b);
        b.append("-");
        formatField(d, 'M', 2, b);
        b.append("-");
        formatField(d, 'd', 2, b);
        b.append(", ");
        formatField(d, 'E', 1, b);
        break;
      }
      case "yMMM": {
        // Pattern: "MMM y"
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yMMMd": {
        // Pattern: "MMM d, y"
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yMMMEd": {
        // Pattern: "E, MMM d, y"
        formatField(d, 'E', 1, b);
        b.append(", ");
        formatField(d, 'M', 3, b);
        b.append(" ");
        formatField(d, 'd', 1, b);
        b.append(", ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yMMMM": {
        // Pattern: "MMMM y"
        formatField(d, 'M', 4, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yQQQ": {
        // Pattern: "QQQ y"
        formatField(d, 'Q', 3, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yQQQQ": {
        // Pattern: "QQQQ y"
        formatField(d, 'Q', 4, b);
        b.append(" ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yw-count-one": {
        // Pattern: "'week' w 'of' y"
        b.append("week ");
        formatField(d, 'w', 1, b);
        b.append(" of ");
        formatField(d, 'y', 1, b);
        break;
      }
      case "yw-count-other": {
        // Pattern: "'week' w 'of' y"
        b.append("week ");
        formatField(d, 'w', 1, b);
        b.append(" of ");
        formatField(d, 'y', 1, b);
        break;
      }
      default: {
        return false;
      }
    }
    return true;
  }

  @Override
  public void formatInterval(ZonedDateTime s, ZonedDateTime e, String k, DateTimeField f,
      StringBuilder b) {
    if (k != null && f != null) {
      switch (k) {
        case "d": {
          switch (f) {
            case DAY: {
              // "d–"
              formatField(s, 'd', 1, b);
              b.append("–");
              // "d"
              formatField(e, 'd', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "hm": {
          switch (f) {
            case AM_PM: {
              // "h:mm a – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" ");
              formatField(s, 'a', 1, b);
              b.append(" – ");
              // "h:mm a"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              return;
            }
            case HOUR: {
              // "h:mm – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "h:mm a"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              return;
            }
            case MINUTE: {
              // "h:mm – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "h:mm a"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "Hm": {
          switch (f) {
            case HOUR: {
              // "HH:mm – "
              formatField(s, 'H', 2, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "HH:mm"
              formatField(e, 'H', 2, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              return;
            }
            case MINUTE: {
              // "HH:mm – "
              formatField(s, 'H', 2, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "HH:mm"
              formatField(e, 'H', 2, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "h": {
          switch (f) {
            case AM_PM: {
              // "h a – "
              formatField(s, 'h', 1, b);
              b.append(" ");
              formatField(s, 'a', 1, b);
              b.append(" – ");
              // "h a"
              formatField(e, 'h', 1, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              return;
            }
            case HOUR: {
              // "h – "
              formatField(s, 'h', 1, b);
              b.append(" – ");
              // "h a"
              formatField(e, 'h', 1, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "H": {
          switch (f) {
            case HOUR: {
              // "HH – "
              formatField(s, 'H', 2, b);
              b.append(" – ");
              // "HH"
              formatField(e, 'H', 2, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMMMEd": {
          switch (f) {
            case DAY: {
              // "E, MMM d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, MMM d, y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            case YEAR: {
              // "E, MMM d, y – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(", ");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "E, MMM d, y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "E, MMM d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, MMM d, y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMEd": {
          switch (f) {
            case DAY: {
              // "E, M/d/y – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "E, M/d/y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            case YEAR: {
              // "E, M/d/y – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "E, M/d/y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "E, M/d/y – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "E, M/d/y"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "MMM": {
          switch (f) {
            case MONTH: {
              // "MMM – "
              formatField(s, 'M', 3, b);
              b.append(" – ");
              // "MMM"
              formatField(e, 'M', 3, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMMM": {
          switch (f) {
            case YEAR: {
              // "MMM y – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "MMM y"
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "MMM – "
              formatField(s, 'M', 3, b);
              b.append(" – ");
              // "MMM y"
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "M": {
          switch (f) {
            case MONTH: {
              // "M – "
              formatField(s, 'M', 1, b);
              b.append(" – ");
              // "M"
              formatField(e, 'M', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "MEd": {
          switch (f) {
            case DAY: {
              // "E, M/d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, M/d"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              return;
            }
            case MONTH: {
              // "E, M/d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, M/d"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "MMMEd": {
          switch (f) {
            case DAY: {
              // "E, MMM d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, MMM d"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              return;
            }
            case MONTH: {
              // "E, MMM d – "
              formatField(s, 'E', 1, b);
              b.append(", ");
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "E, MMM d"
              formatField(e, 'E', 1, b);
              b.append(", ");
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "hv": {
          switch (f) {
            case AM_PM: {
              // "h a – "
              formatField(s, 'h', 1, b);
              b.append(" ");
              formatField(s, 'a', 1, b);
              b.append(" – ");
              // "h a v"
              formatField(e, 'h', 1, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            case HOUR: {
              // "h – "
              formatField(s, 'h', 1, b);
              b.append(" – ");
              // "h a v"
              formatField(e, 'h', 1, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "Hv": {
          switch (f) {
            case HOUR: {
              // "HH – "
              formatField(s, 'H', 2, b);
              b.append(" – ");
              // "HH v"
              formatField(e, 'H', 2, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "hmv": {
          switch (f) {
            case AM_PM: {
              // "h:mm a – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" ");
              formatField(s, 'a', 1, b);
              b.append(" – ");
              // "h:mm a v"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            case HOUR: {
              // "h:mm – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "h:mm a v"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            case MINUTE: {
              // "h:mm – "
              formatField(s, 'h', 1, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "h:mm a v"
              formatField(e, 'h', 1, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'a', 1, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "Hmv": {
          switch (f) {
            case HOUR: {
              // "HH:mm – "
              formatField(s, 'H', 2, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "HH:mm v"
              formatField(e, 'H', 2, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            case MINUTE: {
              // "HH:mm – "
              formatField(s, 'H', 2, b);
              b.append(":");
              formatField(s, 'm', 2, b);
              b.append(" – ");
              // "HH:mm v"
              formatField(e, 'H', 2, b);
              b.append(":");
              formatField(e, 'm', 2, b);
              b.append(" ");
              formatField(e, 'v', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMd": {
          switch (f) {
            case DAY: {
              // "M/d/y – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "M/d/y"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            case YEAR: {
              // "M/d/y – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "M/d/y"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "M/d/y – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "M/d/y"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "MMMd": {
          switch (f) {
            case DAY: {
              // "MMM d – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "d"
              formatField(e, 'd', 1, b);
              return;
            }
            case MONTH: {
              // "MMM d – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "MMM d"
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yM": {
          switch (f) {
            case YEAR: {
              // "M/y – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "M/y"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "M/y – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "M/y"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMMMM": {
          switch (f) {
            case YEAR: {
              // "MMMM y – "
              formatField(s, 'M', 4, b);
              b.append(" ");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "MMMM y"
              formatField(e, 'M', 4, b);
              b.append(" ");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "MMMM – "
              formatField(s, 'M', 4, b);
              b.append(" – ");
              // "MMMM y"
              formatField(e, 'M', 4, b);
              b.append(" ");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "Md": {
          switch (f) {
            case DAY: {
              // "M/d – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "M/d"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              return;
            }
            case MONTH: {
              // "M/d – "
              formatField(s, 'M', 1, b);
              b.append("/");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "M/d"
              formatField(e, 'M', 1, b);
              b.append("/");
              formatField(e, 'd', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "y": {
          switch (f) {
            case YEAR: {
              // "y–"
              formatField(s, 'y', 1, b);
              b.append("–");
              // "y"
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        case "yMMMd": {
          switch (f) {
            case DAY: {
              // "MMM d – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "d, y"
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            case YEAR: {
              // "MMM d, y – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(", ");
              formatField(s, 'y', 1, b);
              b.append(" – ");
              // "MMM d, y"
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            case MONTH: {
              // "MMM d – "
              formatField(s, 'M', 3, b);
              b.append(" ");
              formatField(s, 'd', 1, b);
              b.append(" – ");
              // "MMM d, y"
              formatField(e, 'M', 3, b);
              b.append(" ");
              formatField(e, 'd', 1, b);
              b.append(", ");
              formatField(e, 'y', 1, b);
              return;
            }
            default: break;
          }
          break;
        }
        default: break;
      }
      // "{0} – {1}"
      formatSkeleton(k, s, b);
      b.append(" – ");
      formatSkeleton(k, e, b);
    }
  }

  protected void wrapTimeZoneGMT(StringBuilder b, boolean neg, int hours, int mins,
      boolean _short) {
    if (hours == 0 && mins == 0) {
      b.append("GMT");
      return;
    }
    boolean emitMins = !_short || mins > 0;
    b.append("GMT");
    if (neg) {
      b.append("-");
      zeroPad2(b, hours, _short ? 1 : 2);
      if (emitMins) {
        b.append(":");
      }
      if (emitMins) {
        zeroPad2(b, mins, 2);
      }
    }
    else {
      b.append("+");
      zeroPad2(b, hours, _short ? 1 : 2);
      if (emitMins) {
        b.append(":");
      }
      if (emitMins) {
        zeroPad2(b, mins, 2);
      }
    }
  }

  protected void wrapTimeZoneRegion(StringBuilder b, String region) {
    b.append("Isikhathi sase-");
    b.append(region);
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy