# 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.

eras = BCE, CE
eraNames = BCE, CE
narrowMonths = Y, F, M, A, M, I, I, A, S, O, N, D
months = Muharram, Safar, Rabiul-avval, Rabiul-oxir, Jumodiul-ulo, Jumodiul-uxro, Rajab, Shaʿbon, Ramazon, Shavvol, Zil-qaʿda, Zil-hijja
shortMonths = Yanv, Fev, Mar, Apr, May, Iyun, Iyul, Avg, Sen, Okt, Noya, Dek
standaloneNarrowMonths = Y, F, M, A, M, I, I, A, S, O, N, D
standaloneMonths = Yanvar, Safar, Rabiul-avval, Rabiul-oxir, Jumodiul-ulo, Jumodiul-uxro, Rajab, Shaʿbon, Ramazon, Shavvol, Zil-qaʿda, Zil-hijja
standaloneShortMonths = Yanv, Fev, Mar, Apr, May, Iyun, Iyul, Avg, Sen, Okt, Noya, Dek
weekdays = yakshanba, dushanba, seshanba, chorshanba, payshanba, juma, shanba
shortWeekdays = Yaksh, Dush, Sesh, Chor, Pay, Jum, Shan
narrowWeekdays = Y, D, S, C, P, J, S
standaloneWeekdays = yakshanba, dushanba, seshanba, chorshanba, payshanba, juma, shanba
standaloneShortWeekdays = Yaksh, Dush, Sesh, Chor, Pay, Jum, Shan
standaloneNarrowWeekdays = Y, D, S, C, P, J, S
shortQuarters = Q1, Q2, Q3, Q4
quarters = Q1, Q2, Q3, Q4
ampms = AM, PM
dateFormats = EEEE\\, yyyy MMMM dd, yyyy MMMM d, yyyy MMM d, yy/MM/dd
timeFormats = HH:mm:ss v, HH:mm:ss z, HH:mm:ss, HH:mm
firstDayOfTheWeek = 1
weekendRange = 7, 1
