# 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 = v. Chr., n. Chr
eraNames = v. Chr., n. Chr
narrowMonths = J, H, M, A, M, B, H, Ö, H, W, W, C
months = Jenner, Hornig, Märze, Abrille, Meije, Bráčet, Heiwet, Öigšte, Herbštmánet, Wímánet, Wintermánet, Chrištmánet
shortMonths = Jen, Hor, Mär, Abr, Mei, Brá, Hei, Öig, Her, Wím, Win, Chr
standaloneNarrowMonths = J, H, M, A, M, B, H, Ö, H, W, W, C
standaloneMonths = Jenner, Hornig, Märze, Abrille, Meije, Bráčet, Heiwet, Öigšte, Herbštmánet, Wímánet, Wintermánet, Chrištmánet
standaloneShortMonths = Jen, Hor, Mär, Abr, Mei, Brá, Hei, Öig, Her, Wím, Win, Chr
weekdays = Sunntag, Mäntag, Zištag, Mittwuč, Fróntag, Fritag, Samštag
shortWeekdays = Sun, Män, Ziš, Mit, Fró, Fri, Sam
narrowWeekdays = S, M, Z, M, F, F, S
standaloneWeekdays = Sunntag, Mäntag, Zištag, Mittwuč, Fróntag, Fritag, Samštag
standaloneShortWeekdays = Sun, Män, Ziš, Mit, Fró, Fri, Sam
standaloneNarrowWeekdays = S, M, Z, M, F, F, S
shortQuarters = Q1, Q2, Q3, Q4
quarters = 1. quartal, 2. quartal, 3. quartal, 4. quartal
ampms = AM, PM
dateFormats = EEEE\\, d. MMMM y, d. MMMM y, d. MMM y, y-MM-dd
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
