# Following code is generated from CLDR data by script. You can do
# emergency fix here, but you fix will be lost unless it is also
# fixed in CLDR. The data generation scripts exists outside GWT and
# will be run manually after each major CLDR updates. Each update
# will be manually checked before check in to make sure undesired
# changes in CLDR will not break existing applications as possible.

# CLDR version 1.7.1 is used in this generation.

eras = BC, AD
eraNames = BC, AD
narrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
months = Janabari, uFeberbari, uMatjhi, u-Apreli, Meyi, Juni, Julayi, Arhostosi, Septemba, Oktoba, Usinyikhaba, Disemba
shortMonths = Jan, Feb, Mat, Apr, Mey, Jun, Jul, Arh, Sep, Okt, Usi, Dis
standaloneNarrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
standaloneMonths = Janabari, uFeberbari, uMatjhi, u-Apreli, Meyi, Juni, Julayi, Arhostosi, Septemba, Oktoba, Usinyikhaba, Disemba
standaloneShortMonths = Jan, Feb, Mat, Apr, Mey, Jun, Jul, Arh, Sep, Okt, Usi, Dis
weekdays = uSonto, uMvulo, uLesibili, Lesithathu, uLesine, ngoLesihlanu, umGqibelo
shortWeekdays = Son, Mvu, Bil, Tha, Ne, Hla, Gqi
narrowWeekdays = 1, 2, 3, 4, 5, 6, 7
standaloneWeekdays = uSonto, uMvulo, uLesibili, Lesithathu, uLesine, ngoLesihlanu, umGqibelo
standaloneShortWeekdays = Son, Mvu, Bil, Tha, Ne, Hla, Gqi
standaloneNarrowWeekdays = 1, 2, 3, 4, 5, 6, 7
shortQuarters = Q1, Q2, Q3, Q4
quarters = Q1, Q2, Q3, Q4
ampms = AM, PM
dateFormats = EEEE\\, y MMMM dd, y MMMM d, y MMM d, yy/MM/dd
timeFormats = HH:mm:ss zzzz, HH:mm:ss z, HH:mm:ss, HH:mm
firstDayOfTheWeek = 2
weekendRange = 7, 1
