# 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.
# File generated from CLDR ver. 25

eras = H-I, C-I
eraNames = Hade Iisa, Caggal Iisa
narrowMonths = s, c, m, s, d, k, m, j, s, y, j, b
months = siilo, colte, mbooy, seeɗto, duujal, korse, morso, juko, siilto, yarkomaa, jolal, bowte
shortMonths = sii, col, mbo, see, duu, kor, mor, juk, slt, yar, jol, bow
standaloneNarrowMonths = s, c, m, s, d, k, m, j, s, y, j, b
standaloneMonths = siilo, colte, mbooy, seeɗto, duujal, korse, morso, juko, siilto, yarkomaa, jolal, bowte
standaloneShortMonths = sii, col, mbo, see, duu, kor, mor, juk, slt, yar, jol, bow
weekdays = dewo, aaɓnde, mawbaare, njeslaare, naasaande, mawnde, hoore-biir
shortWeekdays = dew, aaɓ, maw, nje, naa, mwd, hbi
narrowWeekdays = d, a, m, n, n, m, h
standaloneWeekdays = dewo, aaɓnde, mawbaare, njeslaare, naasaande, mawnde, hoore-biir
standaloneShortWeekdays = dew, aaɓ, maw, nje, naa, mwd, hbi
standaloneNarrowWeekdays = d, a, m, n, n, m, h
shortQuarters = T1, T2, T3, T4
quarters = Termes 1, Termes 2, Termes 3, Termes 4
ampms = subaka, kikiiɗe
dateFormats = EEEE d MMMM y, d MMMM y, d MMM\\, y, d/M/y
timeFormats = HH:mm:ss zzzz, HH:mm:ss z, HH:mm:ss, HH:mm
dateTimeFormats = {1} {0}, {1} {0}, {1} {0}, {1} {0}
firstDayOfTheWeek = 2
weekendRange = 7, 1
