﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
tg{
    AuxExemplarCharacters{"[ц щ ы ь]"}
    ExemplarCharacters{"[а б в г ғ д е ё ж з и ӣ й к қ л м н о п р с т у ӯ ф х ҳ ч ҷ ш ъ э ю я]"}
    NumberElements{
        default{"latn"}
        latn{
            miscPatterns{
                atLeast{"⩾{0}"}
                range{"{0}–{1}"}
            }
            patterns{
                accountingFormat{"#,##0.00 ¤"}
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{" "}
                infinity{"∞"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
                superscriptingExponent{"×"}
            }
        }
        minimumGroupingDigits{"1"}
        native{"latn"}
    }
    Version{"2.1.49.82"}
    calendar{
        generic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd MMMM y G",
                "dd MMMM y G",
                "dd MMM y G",
                "dd/MM/yy GGGGG",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                E{"ccc"}
                Ed{"d, E"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM y G"}
                GyMMMd{"d MMM y G"}
                M{"L"}
                MEd{"E, dd-MM"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                Md{"dd-MM"}
                d{"d"}
                y{"y G"}
                yyyy{"y G"}
                yyyyM{"MM-y GGGGG"}
                yyyyMEd{"E, d-MM-y GGGGG"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d-MM-y GGGGG"}
                yyyyQQQ{"QQQ y G"}
                yyyyQQQQ{"QQQQ y G"}
            }
            intervalFormats{
                fallback{"{0} – {1}"}
            }
        }
        gregorian{
            AmPmMarkers{
                "пе. чо.",
                "па. чо.",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, dd MMMM y",
                "dd MMMM y",
                "dd MMM y",
                "dd/MM/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            appendItems{
                Timezone{"{0} {1}"}
            }
            availableFormats{
                E{"ccc"}
                EHm{"E HH:mm"}
                EHms{"E HH:mm:ss"}
                Ed{"d, E"}
                Gy{"y G"}
                GyMMM{"MMM y G"}
                GyMMMEd{"E, d MMM, y G"}
                GyMMMd{"d MMM, y G"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                Hmsv{"HH:mm:ss v"}
                Hmv{"HH:mm v"}
                M{"L"}
                MEd{"E, dd-MM"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMW{
                    other{"'ҳафтаи' W, MMMM"}
                }
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                Md{"dd-MM"}
                d{"d"}
                ms{"mm:ss"}
                y{"y"}
                yM{"MM-y"}
                yMEd{"E, d/M/y"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM, y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM, y"}
                yMd{"d/M/y"}
                yQQQ{"QQQ y"}
                yQQQQ{"QQQQ y"}
                yw{
                    other{"'ҳафтаи' w, Y"}
                }
            }
            dayNames{
                format{
                    abbreviated{
                        "Яшб",
                        "Дшб",
                        "Сшб",
                        "Чшб",
                        "Пшб",
                        "Ҷмъ",
                        "Шнб",
                    }
                    narrow{
                        "Я",
                        "Д",
                        "С",
                        "Ч",
                        "П",
                        "Ҷ",
                        "Ш",
                    }
                    short{
                        "Яшб",
                        "Дшб",
                        "Сшб",
                        "Чшб",
                        "Пшб",
                        "Ҷмъ",
                        "Шнб",
                    }
                    wide{
                        "Якшанбе",
                        "Душанбе",
                        "Сешанбе",
                        "Чоршанбе",
                        "Панҷшанбе",
                        "Ҷумъа",
                        "Шанбе",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Яшб",
                        "Дшб",
                        "Сшб",
                        "Чшб",
                        "Пшб",
                        "Ҷмъ",
                        "Шнб",
                    }
                    narrow{
                        "Я",
                        "Д",
                        "С",
                        "Ч",
                        "П",
                        "Ҷ",
                        "Ш",
                    }
                    short{
                        "Яшб",
                        "Дшб",
                        "Сшб",
                        "Чшб",
                        "Пшб",
                        "Ҷмъ",
                        "Шнб",
                    }
                    wide{
                        "Якшанбе",
                        "Душанбе",
                        "Сешанбе",
                        "Чоршанбе",
                        "Панҷшанбе",
                        "Ҷумъа",
                        "Шанбе",
                    }
                }
            }
            eras{
                abbreviated{
                    "ПеМ",
                    "ПаМ",
                }
                abbreviated%variant{
                    "BCE",
                    "CE",
                }
                wide{
                    "Пеш аз милод",
                    "ПаМ",
                }
                wide%variant{
                    "BCE",
                    "CE",
                }
            }
            intervalFormats{
                fallback{"{0} – {1}"}
            }
            monthNames{
                format{
                    abbreviated{
                        "Янв",
                        "Фев",
                        "Мар",
                        "Апр",
                        "Май",
                        "Июн",
                        "Июл",
                        "Авг",
                        "Сен",
                        "Окт",
                        "Ноя",
                        "Дек",
                    }
                    narrow{
                        "Я",
                        "Ф",
                        "М",
                        "А",
                        "М",
                        "И",
                        "И",
                        "А",
                        "С",
                        "О",
                        "Н",
                        "Д",
                    }
                    wide{
                        "Январ",
                        "Феврал",
                        "Март",
                        "Апрел",
                        "Май",
                        "Июн",
                        "Июл",
                        "Август",
                        "Сентябр",
                        "Октябр",
                        "Ноябр",
                        "Декабр",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Янв",
                        "Фев",
                        "Мар",
                        "Апр",
                        "Май",
                        "Июн",
                        "Июл",
                        "Авг",
                        "Сен",
                        "Окт",
                        "Ноя",
                        "Дек",
                    }
                    narrow{
                        "Я",
                        "Ф",
                        "М",
                        "А",
                        "М",
                        "И",
                        "И",
                        "А",
                        "С",
                        "О",
                        "Н",
                        "Д",
                    }
                    wide{
                        "Январ",
                        "Феврал",
                        "Март",
                        "Апрел",
                        "Май",
                        "Июн",
                        "Июл",
                        "Август",
                        "Сентябр",
                        "Октябр",
                        "Ноябр",
                        "Декабр",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Ч1",
                        "Ч2",
                        "Ч3",
                        "Ч4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Ч1",
                        "Ч2",
                        "Ч3",
                        "Ч4",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Ч1",
                        "Ч2",
                        "Ч3",
                        "Ч4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Ч1",
                        "Ч2",
                        "Ч3",
                        "Ч4",
                    }
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"»"}
        alternateQuotationStart{"«"}
        quotationEnd{"»"}
        quotationStart{"«"}
    }
    fields{
        day{
            dn{"рӯз"}
            relative{
                "-1"{"дирӯз"}
                "0"{"имрӯз"}
                "1"{"фардо"}
            }
        }
        day-narrow{
            dn{"рӯз"}
        }
        day-short{
            dn{"рӯз"}
        }
        dayperiod{
            dn{"пе. чо./па. чо."}
        }
        era{
            dn{"мабдаи таърих"}
        }
        hour{
            dn{"соат"}
        }
        hour-narrow{
            dn{"ст."}
        }
        hour-short{
            dn{"ст."}
        }
        minute{
            dn{"дақиқа"}
        }
        minute-narrow{
            dn{"дақ."}
        }
        minute-short{
            dn{"дақ."}
        }
        month{
            dn{"моҳ"}
        }
        month-narrow{
            dn{"м."}
        }
        month-short{
            dn{"м."}
        }
        quarter{
            dn{"чоряк"}
        }
        quarter-narrow{
            dn{"чр."}
        }
        quarter-short{
            dn{"чр."}
        }
        second{
            dn{"сония"}
        }
        second-narrow{
            dn{"сон."}
        }
        second-short{
            dn{"сон."}
        }
        week{
            dn{"ҳафта"}
        }
        week-narrow{
            dn{"ҳ."}
        }
        week-short{
            dn{"ҳ."}
        }
        weekday{
            dn{"рӯзи ҳафта"}
        }
        year{
            dn{"сол"}
        }
        year-narrow{
            dn{"с."}
        }
        year-short{
            dn{"с."}
        }
        zone{
            dn{"минтақаи вақт"}
        }
    }
    listPattern{
        standard{
            2{"{0}, {1}"}
            end{"{0}, {1}"}
            middle{"{0}, {1}"}
            start{"{0}, {1}"}
        }
    }
    measurementSystemNames{
        UK{"БК"}
        US{"ИМА"}
        metric{"Метрӣ"}
    }
}
