﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
ksh{
    zoneStrings{
        "Africa:Cairo"{
            ec{"Kaijro"}
        }
        "Africa:Lagos"{
            ec{"Laajos"}
        }
        "Africa:Windhoek"{
            ec{"Windhuk"}
        }
        "America:Costa_Rica"{
            ec{"Koßtaricka"}
        }
        "America:Guayaquil"{
            ec{"Juayaquil"}
        }
        "America:Indiana:Knox"{
            ec{"Knox en Indiana"}
        }
        "America:Indiana:Marengo"{
            ec{"Marengo en Indiana"}
        }
        "America:Indiana:Petersburg"{
            ec{"Petersburg en Indiana"}
        }
        "America:Indiana:Tell_City"{
            ec{"Tell City en Indiana"}
        }
        "America:Indiana:Vevay"{
            ec{"Vevay en Indiana"}
        }
        "America:Indiana:Vincennes"{
            ec{"Vincennes en Indiana"}
        }
        "America:Indiana:Winamac"{
            ec{"Winamac en Indiana"}
        }
        "America:Kentucky:Monticello"{
            ec{"Monticello en Kentucky"}
        }
        "America:Mexico_City"{
            ec{"Schtadt Mexiko"}
        }
        "America:North_Dakota:Beulah"{
            ec{"Beulah en Nood Dakota"}
        }
        "America:North_Dakota:Center"{
            ec{"Zenter en Nood Dakota"}
        }
        "America:North_Dakota:New_Salem"{
            ec{"Neu Salem en Nood Dakota"}
        }
        "America:St_Barthelemy"{
            ec{"Zint Barthélemy"}
        }
        "America:St_Johns"{
            ec{"Zint John’s"}
        }
        "America:St_Kitts"{
            ec{"Zint Kitts"}
        }
        "America:St_Lucia"{
            ec{"Santa Lutschiija"}
        }
        "America:St_Thomas"{
            ec{"Zint Thomas"}
        }
        "America:St_Vincent"{
            ec{"Zint Vintschänt"}
        }
        "America:Yakutat"{
            ec{"Jakutat"}
        }
        "Antarctica:DumontDUrville"{
            ec{"Dumont-d’Urville-Schtazjohn"}
        }
        "Antarctica:Syowa"{
            ec{"Schoowa-Schtazjohn op dä Ensel Onjul"}
        }
        "Antarctica:Vostok"{
            ec{"Wostok"}
        }
        "Asia:Aqtobe"{
            ec{"Aqtöbe"}
        }
        "Asia:Ashgabat"{
            ec{"Asshgabat"}
        }
        "Asia:Baghdad"{
            ec{"Bagdad"}
        }
        "Asia:Bishkek"{
            ec{"Bischkek"}
        }
        "Asia:Damascus"{
            ec{"Damaskus"}
        }
        "Asia:Dushanbe"{
            ec{"Duschanbe"}
        }
        "Asia:Gaza"{
            ec{"Jaasa"}
        }
        "Asia:Hong_Kong"{
            ec{"Hongkong"}
        }
        "Asia:Kamchatka"{
            ec{"Kamschattka"}
        }
        "Asia:Krasnoyarsk"{
            ec{"Krasnojarsk"}
        }
        "Asia:Nicosia"{
            ec{"Nikosija"}
        }
        "Asia:Phnom_Penh"{
            ec{"Pnom Penh"}
        }
        "Asia:Qyzylorda"{
            ec{"Qysylorda"}
        }
        "Asia:Rangoon"{
            ec{"Ranjun"}
        }
        "Asia:Riyadh"{
            ec{"Rijad"}
        }
        "Asia:Saigon"{
            ec{"Sigong (Ho-Tschi-Minh-Schtadt)"}
        }
        "Asia:Shanghai"{
            ec{"Schanghai"}
        }
        "Asia:Singapore"{
            ec{"Singjapuur"}
        }
        "Asia:Tashkent"{
            ec{"Taschkent"}
        }
        "Asia:Tbilisi"{
            ec{"Tiblis"}
        }
        "Asia:Ulaanbaatar"{
            ec{"Ulan Bator"}
        }
        "Asia:Urumqi"{
            ec{"Urrumptschi"}
        }
        "Asia:Vladivostok"{
            ec{"Wladiwostok"}
        }
        "Asia:Yakutsk"{
            ec{"Jakutsk"}
        }
        "Asia:Yekaterinburg"{
            ec{"Jekaterinburg"}
        }
        "Asia:Yerevan"{
            ec{"Eriwan"}
        }
        "Atlantic:Azores"{
            ec{"Azoore"}
        }
        "Atlantic:Canary"{
            ec{"Kannaare"}
        }
        "Atlantic:Cape_Verde"{
            ec{"Kap Verde"}
        }
        "Atlantic:Faeroe"{
            ec{"Färör"}
        }
        "Atlantic:St_Helena"{
            ec{"Zint Helena"}
        }
        "Etc:Unknown"{
            ec{"- weße mer nit -"}
        }
        "Europe:Athens"{
            ec{"Athen"}
        }
        "Europe:Belgrade"{
            ec{"Beljrad"}
        }
        "Europe:Brussels"{
            ec{"Brüssel"}
        }
        "Europe:Bucharest"{
            ec{"Bukarest"}
        }
        "Europe:Copenhagen"{
            ec{"Kopenharen"}
        }
        "Europe:Dublin"{
            ld{"Irland sing Summerzick"}
        }
        "Europe:Gibraltar"{
            ec{"Jibraltaa"}
        }
        "Europe:Guernsey"{
            ec{"Jöönsei"}
        }
        "Europe:Isle_of_Man"{
            ec{"Ensel Män"}
        }
        "Europe:Istanbul"{
            ec{"Istambul"}
        }
        "Europe:Jersey"{
            ec{"Jöösei"}
        }
        "Europe:Kaliningrad"{
            ec{"Kalinninjraad"}
        }
        "Europe:Lisbon"{
            ec{"Lissabon"}
        }
        "Europe:London"{
            ld{"Jrußbretannije sing Summerzick"}
        }
        "Europe:Luxembourg"{
            ec{"Luxembursch"}
        }
        "Europe:Moscow"{
            ec{"Moskau"}
        }
        "Europe:Prague"{
            ec{"Prag"}
        }
        "Europe:Riga"{
            ec{"Riija"}
        }
        "Europe:Rome"{
            ec{"Rom"}
        }
        "Europe:Tirane"{
            ec{"Tiraana"}
        }
        "Europe:Uzhgorod"{
            ec{"Uschjorod"}
        }
        "Europe:Vatican"{
            ec{"der Vatikahn"}
        }
        "Europe:Vienna"{
            ec{"Wien"}
        }
        "Europe:Volgograd"{
            ec{"Woljojrad"}
        }
        "Europe:Warsaw"{
            ec{"Warschau"}
        }
        "Europe:Zagreb"{
            ec{"Sagreb"}
        }
        "Europe:Zaporozhye"{
            ec{"Saporischschja"}
        }
        "Europe:Zurich"{
            ec{"Züresch"}
        }
        "Indian:Maldives"{
            ec{"Malldive"}
        }
        "Pacific:Galapagos"{
            ec{"Jalappajos"}
        }
        "Pacific:Guam"{
            ec{"Juam"}
        }
        "Pacific:Honolulu"{
            ec{"Honululu"}
        }
        "Pacific:Pitcairn"{
            ec{"Pitkern"}
        }
        "meta:Africa_Central"{
            ls{"Zentraal-Affrekaanesche Zigg"}
        }
        "meta:Africa_Eastern"{
            ls{"Oß-Affrekaanesche Zigg"}
        }
        "meta:Africa_Southern"{
            ls{"Söd-Affrekaanesche Zigg"}
        }
        "meta:Africa_Western"{
            ld{"Wäß-Affrekaanesche Sommerzigg"}
            lg{"Wäß-Affrekaanesche Zigg"}
            ls{"Jewöhnlijje Wäß-Affrekaanesche Zigg"}
        }
        "meta:Azores"{
            ld{"de Azore ier Summerzick"}
            lg{"de Azore ier Zick"}
            ls{"de Azore ier jewöhnlijje Zick"}
        }
        "meta:Cape_Verde"{
            ld{"Kapvärdejaansche Sommerzigg"}
            lg{"Kapvärdejaansche Zigg"}
            ls{"Jewöhnlijje Kapvärdejaansche Zigg"}
        }
        "meta:Europe_Central"{
            ld{"Meddel-Europpa sing Summerzick"}
            lg{"Meddel-Europpa sing Zick"}
            ls{"Meddel-Europpa sing jewöhnlijje Zick"}
            sd{"MESZ"}
            sg{"MEZ"}
            ss{"MEZ"}
        }
        "meta:Europe_Eastern"{
            ld{"Oß-Europpa sing Summerzick"}
            lg{"Oß-Europpa sing Zick"}
            ls{"Oß-Europpa sing jewöhnlijje Zick"}
            sd{"OESZ"}
            sg{"OEZ"}
            ss{"OEZ"}
        }
        "meta:Europe_Western"{
            ld{"Weß-Europpa sing Summerzick"}
            lg{"Weß-Europpa sing Zick"}
            ls{"Weß-Europpa sing jewöhnlijje Zick"}
            sd{"WESZ"}
            sg{"WEZ"}
            ss{"WEZ"}
        }
        "meta:GMT"{
            ls{"Greenwich sing Standat-Zick"}
        }
        "meta:Indian_Ocean"{
            ls{"dem Indische Ozejan sing Zick"}
        }
        "meta:Mauritius"{
            ld{"Summerzigg vun Mauritius"}
            lg{"Zigg vun Mauritius"}
            ls{"Jewöhnlijje Zigg vun Mauritius"}
        }
        "meta:Reunion"{
            ls{"Zigg vun Reunion"}
        }
        "meta:Seychelles"{
            ls{"Zigg vun de Seischälle"}
        }
        fallbackFormat{"{1} ({0})"}
        gmtFormat{"GMT{0}"}
        hourFormat{"+HH:mm;-HH:mm"}
        regionFormat{"Zick vun {0}"}
        regionFormatDaylight{"Summerzick vun {0}"}
        regionFormatStandard{"Schtandattzick vun {0}"}
    }
}
