# 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 = KK, BK
eraNames = Kabla ya Christo, Baada ya Christo
narrowMonths = R, M, K, D, M, M, J, P, S, T, L, P
months = Orara, Omuk, Okwamg', Odung'el, Omaruk, Omodok'king'ol, Ojola, Opedel, Osokosokoma, Otibar, Olabor, Opoo
shortMonths = Rar, Muk, Kwa, Dun, Mar, Mod, Jol, Ped, Sok, Tib, Lab, Poo
standaloneNarrowMonths = R, M, K, D, M, M, J, P, S, T, L, P
standaloneMonths = Orara, Omuk, Okwamg', Odung'el, Omaruk, Omodok'king'ol, Ojola, Opedel, Osokosokoma, Otibar, Olabor, Opoo
standaloneShortMonths = Rar, Muk, Kwa, Dun, Mar, Mod, Jol, Ped, Sok, Tib, Lab, Poo
weekdays = Nakaejuma, Nakaebarasa, Nakaare, Nakauni, Nakaung'on, Nakakany, Nakasabiti
shortWeekdays = Jum, Bar, Aar, Uni, Ung, Kan, Sab
narrowWeekdays = J, B, A, U, U, K, S
standaloneWeekdays = Nakaejuma, Nakaebarasa, Nakaare, Nakauni, Nakaung'on, Nakakany, Nakasabiti
standaloneShortWeekdays = Jum, Bar, Aar, Uni, Ung, Kan, Sab
standaloneNarrowWeekdays = J, B, A, U, U, K, S
shortQuarters = K1, K2, K3, K4
quarters = Akwota abe, Akwota Aane, Akwota auni, Akwota Aung'on
ampms = Taparachu, Ebongi
dateFormats = EEEE\\, d MMMM y, d MMMM y, d MMM y, dd/MM/y
timeFormats = h:mm:ss a zzzz, h:mm:ss a z, h:mm:ss a, h:mm a
dateTimeFormats = {1} {0}, {1} {0}, {1} {0}, {1} {0}
firstDayOfTheWeek = 1
weekendRange = 7, 1
