# 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 = f.Kr., e.Kr.
eraNames = fyrir Krist, eftir Krist
narrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
months = januar, februar, mars, apríl, mai, juni, juli, august, september, oktober, november, desember
shortMonths = jan, feb, mar, apr, mai, jun, jul, aug, sep, okt, nov, des
standaloneNarrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
standaloneMonths = januar, februar, mars, apríl, mai, juni, juli, august, september, oktober, november, desember
standaloneShortMonths = jan, feb, mar, apr, mai, jun, jul, aug, sep, okt, nov, des
weekdays = sunnudagur, mánadagur, týsdagur, mikudagur, hósdagur, fríggjadagur, leygardagur
shortWeekdays = sun, mán, týs, mik, hós, frí, ley
narrowWeekdays = 1, 2, 3, 4, 5, 6, 7
standaloneWeekdays = sunnudagur, mánadagur, týsdagur, mikudagur, hósdagur, fríggjadagur, leygardagur
standaloneShortWeekdays = sun, mán, týs, mik, hós, frí, ley
standaloneNarrowWeekdays = 1, 2, 3, 4, 5, 6, 7
shortQuarters = K1, K2, K3, K4
quarters = 1. kvartal, 2. kvartal, 3. kvartal, 4. kvartal
ampms = AM, PM
dateFormats = EEEE dd MMMM y, d. MMM y, dd-MM-yyyy, dd-MM-yy
timeFormats = HH:mm:ss zzzz, HH:mm:ss z, HH:mm:ss, HH:mm
firstDayOfTheWeek = 1
weekendRange = 7, 1
