# 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 = a.Chr., p.Chr.
eraNames = ante Christo, post Christo
narrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
months = januario, februario, martio, april, maio, junio, julio, augusto, septembre, octobre, novembre, decembre
shortMonths = jan, feb, mar, apr, mai, jun, jul, aug, sep, oct, nov, dec
standaloneNarrowMonths = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
standaloneMonths = januario, februario, martio, april, maio, junio, julio, augusto, septembre, octobre, novembre, decembre
standaloneShortMonths = jan, feb, mar, apr, mai, jun, jul, aug, sep, oct, nov, dec
weekdays = dominica, lunedi, martedi, mercuridi, jovedi, venerdi, sabbato
shortWeekdays = dom, lun, mar, mer, jov, ven, sab
narrowWeekdays = 1, 2, 3, 4, 5, 6, 7
standaloneWeekdays = dominica, lunedi, martedi, mercuridi, jovedi, venerdi, sabbato
standaloneShortWeekdays = dom, lun, mar, mer, jov, ven, sab
standaloneNarrowWeekdays = 1, 2, 3, 4, 5, 6, 7
shortQuarters = T1, T2, T3, T4
quarters = 1-me trimestre, 2-nde trimestre, 3-tie trimestre, 4-te trimestre
ampms = a.m., p.m.
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
