# 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 = BC, AD
eraNames = Before Christ, Anno Domini
narrowMonths = J, F, M, A, M, J, J, A, S, O, N, D
months = January, February, March, April, May, June, July, August, September, October, November, December
shortMonths = Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
standaloneNarrowMonths = J, F, M, A, M, J, J, A, S, O, N, D
standaloneMonths = January, February, March, April, May, June, July, August, September, October, November, December
standaloneShortMonths = Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
weekdays = Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday
shortWeekdays = Sun, Mon, Tue, Wed, Thu, Fri, Sat
narrowWeekdays = S, M, T, W, T, F, S
standaloneWeekdays = Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday
standaloneShortWeekdays = Sun, Mon, Tue, Wed, Thu, Fri, Sat
standaloneNarrowWeekdays = S, M, T, W, T, F, S
shortQuarters = Q1, Q2, Q3, Q4
quarters = 1st quarter, 2nd quarter, 3rd quarter, 4th quarter
ampms = AM, PM
dateFormats = EEEE\\, MMMM d\\, y, MMMM d\\, y, MMM d\\, y, M/d/yy
timeFormats = h:mm:ss a zzzz, h:mm:ss a z, h:mm:ss a, h:mm a
dateTimeFormats = {1} 'at' {0}, {1} 'at' {0}, {1}\\, {0}, {1}\\, {0}
firstDayOfTheWeek = 2
weekendRange = 7, 1
