﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/vi.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/vi.xml
 */
vi{
    AuxExemplarCharacters{"[]"}
    ExemplarCharacters{
        "[a à ả ã á ạ ă ằ ẳ ẵ ắ ặ â ầ ẩ ẫ ấ ậ b c d đ e è ẻ ẽ é ẹ ê ề ể ễ ế ệ f g h i"
        " ì ỉ ĩ í ị j k l m n o ò ỏ õ ó ọ ô ồ ổ ỗ ố ộ ơ ờ ở ỡ ớ ợ p q r s t u ù ủ ũ ú"
        " ụ ư ừ ử ữ ứ ự v w x y ỳ ỷ ỹ ý ỵ z]"
    }
    ExemplarCharactersCurrency{"[a b c d đ e f g h i j k l m n o p q r s t u v w x y z]"}
    ExemplarCharactersIndex{"[A Ă Â B C D Đ E Ê F G H I J K L M N O Ô Ơ P Q R S T U Ư V W X Y Z]"}
    LocaleScript{
        "Latn",
    }
    NumberElements{
        latn{
            patterns{
                currencyFormat{"#,##0.00 ¤"}
                decimalFormat{"#,##0.###"}
                percentFormat{"#,##0%"}
                scientificFormat{"#E0"}
            }
            symbols{
                decimal{","}
                exponential{"E"}
                group{"."}
                infinity{"∞"}
                list{";"}
                minusSign{"-"}
                nan{"NaN"}
                perMille{"‰"}
                percentSign{"%"}
                plusSign{"+"}
            }
        }
    }
    Version{"2.0.67.6"}
    calendar{
        buddhist{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, 'ngày' dd MMMM 'năm' y G",
                "'Ngày' dd 'tháng' M 'năm' y G",
                "dd-MM-yyyy G",
                "dd/MM/yyyy G",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
            }
            availableFormats{
                Ed{"E, d"}
                MEd{"E, d-M"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                Md{"d-M"}
                d{"'Ngày' d"}
                mmss{"mm:ss"}
                y{"'Năm' y G"}
                yM{"M/y GGGGG"}
                yMEd{"E, d-M-yyyy G"}
                yMMM{"MMM y G"}
                yMMMEd{"E, d MMM y G"}
                yMMMM{"MMMM y G"}
                yMMMd{"d MMM y G"}
                yQ{"Q yyyy G"}
                yQQQ{"QQQ y G"}
                yyQ{"Q yy G"}
                yyyy{"'Năm' y G"}
                yyyyMM{"MM-yyyy G"}
                yyyyMd{"d-M-yyyy G"}
            }
        }
        chinese{
            monthNames{
                format{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
                stand-alone{
                    abbreviated{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
            }
        }
        coptic{
            monthNames{
                format{
                    abbreviated{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                        "13",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                    wide{
                        "Tout",
                        "Baba",
                        "Hator",
                        "Kiahk",
                        "Toba",
                        "Amshir",
                        "Baramhat",
                        "Baramouda",
                        "Bashans",
                        "Paona",
                        "Epep",
                        "Mesra",
                        "Nasie",
                    }
                }
            }
        }
        ethiopic{
            monthNames{
                format{
                    abbreviated{
                        "Meskerem",
                        "Tekemt",
                        "Hedar",
                        "Tahsas",
                        "Ter",
                        "Yekatit",
                        "Megabit",
                        "Miazia",
                        "Genbot",
                        "Sene",
                        "Hamle",
                        "Nehasse",
                        "Pagumen",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                        "13",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Meskerem",
                        "Tekemt",
                        "Hedar",
                        "Tahsas",
                        "Ter",
                        "Yekatit",
                        "Megabit",
                        "Miazia",
                        "Genbot",
                        "Sene",
                        "Hamle",
                        "Nehasse",
                        "Pagumen",
                    }
                    wide{
                        "Meskerem",
                        "Tekemt",
                        "Hedar",
                        "Tahsas",
                        "Ter",
                        "Yekatit",
                        "Megabit",
                        "Miazia",
                        "Genbot",
                        "Sene",
                        "Hamle",
                        "Nehasse",
                        "Pagumen",
                    }
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "SA",
                "CH",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, 'ngày' dd MMMM 'năm' y",
                "'Ngày' dd 'tháng' M 'năm' y",
                "dd-MM-yyyy",
                "dd/MM/yyyy",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
            }
            availableFormats{
                Ed{"E, d"}
                Hm{"H:mm"}
                Hms{"H:mm:ss"}
                M{"L"}
                MEd{"E, d-M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                Md{"d-M"}
                d{"'Ngày' d"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                mmss{"mm:ss"}
                ms{"mm:ss"}
                y{"'Năm' y"}
                yM{"M/yyyy"}
                yMEd{"E, d-M-yyyy"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                yMMMM{"MMMM y"}
                yMMMd{"d MMM, y"}
                yMd{"d/M/y"}
                yQ{"Q yyyy"}
                yQQQ{"QQQ y"}
                yyQ{"Q yy"}
                yyyy{"y"}
                yyyyMM{"MM-yyyy"}
            }
            dayNames{
                format{
                    abbreviated{
                        "CN",
                        "Th 2",
                        "Th 3",
                        "Th 4",
                        "Th 5",
                        "Th 6",
                        "Th 7",
                    }
                    narrow{
                        "CN",
                        "T2",
                        "T3",
                        "T4",
                        "T5",
                        "T6",
                        "T7",
                    }
                    wide{
                        "Chủ nhật",
                        "Thứ hai",
                        "Thứ ba",
                        "Thứ tư",
                        "Thứ năm",
                        "Thứ sáu",
                        "Thứ bảy",
                    }
                }
                stand-alone{
                    narrow{
                        "CN",
                        "T2",
                        "T3",
                        "T4",
                        "T5",
                        "T6",
                        "T7",
                    }
                }
            }
            eras{
                abbreviated{
                    "tr. CN",
                    "sau CN",
                }
            }
            fields{
                day{
                    dn{"Ngày"}
                    relative{
                        "-1"{"Ngày hôm qua"}
                        "-2"{"Ngày hôm kia"}
                        "0"{"Hôm nay"}
                        "1"{"Ngày mai"}
                        "2"{"Ngày kia"}
                    }
                }
                dayperiod{
                    dn{"SA/CH"}
                }
                era{
                    dn{"Thời đại"}
                }
                hour{
                    dn{"Giờ"}
                }
                minute{
                    dn{"Phút"}
                }
                month{
                    dn{"Tháng"}
                    relative{
                        "-1"{"Tháng trước"}
                        "0"{"Tháng này"}
                        "1"{"Tháng sau"}
                    }
                }
                second{
                    dn{"Giây"}
                }
                week{
                    dn{"Tuần"}
                    relative{
                        "-1"{"Tuần trước"}
                        "0"{"Tuần này"}
                        "1"{"Tuần sau"}
                    }
                }
                weekday{
                    dn{"Ngày trong tuần"}
                }
                year{
                    dn{"Năm"}
                    relative{
                        "-1"{"Năm ngoái"}
                        "0"{"Năm nay"}
                        "1"{"Năm sau"}
                    }
                }
                zone{
                    dn{"Múi giờ"}
                }
            }
            intervalFormats{
                H{
                    H{"HH'h' - HH'h'"}
                    a{"HH'h' - HH'h'"}
                }
                Hm{
                    H{"HH:mm-HH:mm"}
                    m{"HH:mm-HH:mm"}
                }
                Hmv{
                    H{"HH:mm-HH:mm v"}
                    m{"HH:mm-HH:mm v"}
                }
                Hv{
                    H{"HH'h'-HH'h' v"}
                    a{"HH'h'-HH'h' v"}
                }
                M{
                    M{"'Tháng' M - 'Tháng' M"}
                }
                MEd{
                    M{"EEEE, dd/MM - EEEE, dd/MM"}
                    d{"EEEE, dd/MM - EEEE, dd/MM"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"EEEE, 'ngày' dd 'tháng' M - EEEE, 'ngày' dd 'tháng' M"}
                    d{"EEEE, 'ngày' dd - EEEE, 'ngày' dd 'tháng' M"}
                }
                MMMd{
                    M{"'Ngày' dd 'tháng' M - 'Ngày' dd 'tháng' M"}
                    d{"'Ngày' dd 'tháng' M - 'Ngày' dd 'tháng' M"}
                }
                Md{
                    M{"dd/MM - dd/MM"}
                    d{"dd/MM - dd/MM"}
                }
                d{
                    d{"'Ngày' d-d"}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"h'h' a - h'h' a"}
                    h{"h'h' - h'h' a"}
                }
                hm{
                    a{"h:mm a – h:mm a"}
                    h{"h:mm-h:mm a"}
                    m{"h:mm-h:mm a"}
                }
                hmv{
                    a{"h:mm a – h:mm a v"}
                    h{"h:mm-h:mm a v"}
                    m{"h:mm-h:mm a v"}
                }
                hv{
                    a{"h'h' a - h'h' a v"}
                    h{"h'h'-h'h' a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"MM/yyyy - MM/yyyy"}
                    y{"MM/yyyy - MM/yyyy"}
                }
                yMEd{
                    M{"EEEE, dd/MM/yyyy - EEEE, dd/MM/yyyy"}
                    d{"EEEE, dd/MM/yyyy - EEEE, dd/MM/yyyy"}
                    y{"EEEE, dd/MM/yyyy - EEEE, dd/MM/yyyy"}
                }
                yMMM{
                    M{"'Tháng' M - 'Tháng' M 'năm' y"}
                    y{"'Tháng' M 'năm' y - 'Tháng' M 'năm' y"}
                }
                yMMMEd{
                    M{"EEEE, 'ngày' dd MMM - EEEE, 'ngày' dd MMM 'năm' y"}
                    d{"EEEE, 'ngày' dd MMM - EEEE, 'ngày' dd MMM 'năm' y"}
                    y{"EEEE, 'ngày' dd MMM 'năm' y - EEEE, 'ngày' dd MMM 'năm' y"}
                }
                yMMMM{
                    M{"MMMM-MMMM y"}
                    y{"MMMM y – MMMM y"}
                }
                yMMMd{
                    M{"'Ngày' dd 'tháng' M - 'Ngày' dd 'tháng' M 'năm' y"}
                    d{"'Ngày' dd 'tháng' M - 'Ngày' dd 'tháng' M 'năm' y"}
                    y{"'Ngày' dd 'tháng' M 'năm' y - 'Ngày' dd 'tháng' M 'năm' y"}
                }
                yMd{
                    M{"dd/MM/yyyy - dd/MM/yyyy"}
                    d{"dd/MM/yyyy - dd/MM/yyyy"}
                    y{"dd/MM/yyyy - dd/MM/yyyy"}
                }
            }
            monthNames{
                format{
                    abbreviated{
                        "thg 1",
                        "thg 2",
                        "thg 3",
                        "thg 4",
                        "thg 5",
                        "thg 6",
                        "thg 7",
                        "thg 8",
                        "thg 9",
                        "thg 10",
                        "thg 11",
                        "thg 12",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                    wide{
                        "tháng một",
                        "tháng hai",
                        "tháng ba",
                        "tháng tư",
                        "tháng năm",
                        "tháng sáu",
                        "tháng bảy",
                        "tháng tám",
                        "tháng chín",
                        "tháng mười",
                        "tháng mười một",
                        "tháng mười hai",
                    }
                }
            }
            quarters{
                format{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Quý 1",
                        "Quý 2",
                        "Quý 3",
                        "Quý 4",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Q1",
                        "Q2",
                        "Q3",
                        "Q4",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                    }
                    wide{
                        "Quý 1",
                        "Quý 2",
                        "Quý 3",
                        "Quý 4",
                    }
                }
            }
        }
        hebrew{
            monthNames{
                format{
                    abbreviated{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                    wide{
                        "Tishri",
                        "Heshvan",
                        "Kislev",
                        "Tevet",
                        "Shevat",
                        "Adar I",
                        "Adar",
                        "Nisan",
                        "Iyar",
                        "Sivan",
                        "Tamuz",
                        "Av",
                        "Elul",
                        "Adar II",
                    }
                }
            }
        }
        indian{
            monthNames{
                format{
                    abbreviated{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                    wide{
                        "Chaitra",
                        "Vaisakha",
                        "Jyaistha",
                        "Asadha",
                        "Sravana",
                        "Bhadra",
                        "Asvina",
                        "Kartika",
                        "Agrahayana",
                        "Pausa",
                        "Magha",
                        "Phalguna",
                    }
                }
            }
        }
        islamic{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, 'ngày' dd MMMM 'năm' y G",
                "'Ngày' dd 'tháng' M 'năm' y G",
                "dd-MM-y G",
                "dd/MM/y G",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
            }
            availableFormats{
                Ed{"E, d"}
                H{"HH"}
                Hm{"HH:mm"}
                Hms{"HH:mm:ss"}
                M{"L"}
                MEd{"E, d-M"}
                MMM{"LLL"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                Md{"d-M"}
                d{"'Ngày' d"}
                h{"h a"}
                hm{"h:mm a"}
                hms{"h:mm:ss a"}
                mmss{"mm:ss"}
                ms{"mm:ss"}
                y{"y"}
                yM{"M/yyyy"}
                yMEd{"E, d-M-yyyy"}
                yMMM{"MMM y"}
                yMMMEd{"E, d MMM y"}
                yMMMM{"MMMM y"}
                yQ{"Q yyyy"}
                yQQQ{"QQQ y"}
                yyQ{"Q yy G"}
                yyyy{"'Năm' y G"}
                yyyyMEd{"E, d-M-y G"}
                yyyyMM{"MM-y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d-M-y G"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
        }
        japanese{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, 'ngày' dd MMMM 'năm' y G",
                "'Ngày' dd 'tháng' M 'năm' y G",
                "dd-MM-y G",
                "dd/MM/y G",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                Ed{"E, d"}
                MEd{"E, d-M"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                Md{"d-M"}
                d{"'Ngày' d"}
                mmss{"mm:ss"}
                yyQ{"Q yy G"}
                yyyy{"'Năm' y G"}
                yyyyMEd{"E, d-M-y G"}
                yyyyMM{"MM-y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d-M-y G"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
        }
        persian{
            monthNames{
                format{
                    abbreviated{
                        "Farvardin",
                        "Ordibehesht",
                        "Khordad",
                        "Tir",
                        "Mordad",
                        "Shahrivar",
                        "Mehr",
                        "Aban",
                        "Azar",
                        "Dey",
                        "Bahman",
                        "Esfand",
                    }
                    narrow{
                        "1",
                        "2",
                        "3",
                        "4",
                        "5",
                        "6",
                        "7",
                        "8",
                        "9",
                        "10",
                        "11",
                        "12",
                    }
                }
                stand-alone{
                    abbreviated{
                        "Farvardin",
                        "Ordibehesht",
                        "Khordad",
                        "Tir",
                        "Mordad",
                        "Shahrivar",
                        "Mehr",
                        "Aban",
                        "Azar",
                        "Dey",
                        "Bahman",
                        "Esfand",
                    }
                    wide{
                        "Farvardin",
                        "Ordibehesht",
                        "Khordad",
                        "Tir",
                        "Mordad",
                        "Shahrivar",
                        "Mehr",
                        "Aban",
                        "Azar",
                        "Dey",
                        "Bahman",
                        "Esfand",
                    }
                }
            }
        }
        roc{
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, 'ngày' dd MMMM 'năm' y G",
                "'Ngày' dd 'tháng' M 'năm' y G",
                "dd-MM-y G",
                "dd/MM/y G",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
                "{0} {1}",
            }
            availableFormats{
                Ed{"E, d"}
                MEd{"E, d-M"}
                MMMEd{"E, d MMM"}
                MMMMEd{"E, d MMMM"}
                MMMMd{"d MMMM"}
                MMMd{"d MMM"}
                MMdd{"dd-MM"}
                Md{"d-M"}
                d{"'Ngày' d"}
                mmss{"mm:ss"}
                y{"y G"}
                yyQ{"Q yy G"}
                yyyy{"'Năm' y G"}
                yyyyMEd{"E, d-M-y G"}
                yyyyMM{"MM-y G"}
                yyyyMMM{"MMM y G"}
                yyyyMMMEd{"E, d MMM y G"}
                yyyyMMMM{"MMMM y G"}
                yyyyMMMd{"d MMM y G"}
                yyyyMd{"d-M-y G"}
                yyyyQ{"Q y G"}
                yyyyQQQ{"QQQ y G"}
            }
            eras{
                abbreviated{
                    "Trước R.O.C",
                    "R.O.C.",
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"’"}
        alternateQuotationStart{"‘"}
        quotationEnd{"”"}
        quotationStart{"“"}
    }
    listPattern{
        standard{
            2{"{0} và {1}"}
            end{"{0} và {1}"}
        }
    }
    measurementSystemNames{
        UK{"Vương Quốc Anh"}
        US{"Hoa Kỳ"}
        metric{"Hệ mét"}
    }
    units{
        day{
            other{"{0} ngày"}
        }
        day-future{
            0{"Trong 0 ngày"}
            1{"Trong 1 ngày"}
            other{"Trong {0} ngày"}
        }
        day-past{
            0{"0 ngày trước"}
            1{"1 ngày trước"}
            other{"{0} ngày trước"}
        }
        hour{
            other{"{0} giờ"}
        }
        hour-future{
            0{"Trong 0 giờ"}
            1{"Trong 1 giờ"}
            other{"Trong {0} giờ"}
        }
        hour-past{
            0{"0 giờ trước"}
            1{"1 giờ trước"}
            other{"{0} giờ trước"}
        }
        minute{
            other{"{0} phút"}
        }
        minute-future{
            0{"Trong 0 phút"}
            1{"Trong 1 phút"}
            other{"Trong {0} phút"}
        }
        minute-past{
            0{"0 phút trước"}
            1{"1 phút trước"}
            other{"{0} phút trước"}
        }
        month{
            other{"{0} tháng"}
        }
        month-future{
            0{"Trong 0 tháng"}
            1{"Trong 1 tháng"}
            other{"Trong {0} tháng"}
        }
        month-past{
            0{"0 tháng trước"}
            1{"1 tháng trước"}
            other{"{0} tháng trước"}
        }
        second{
            other{"{0} giây"}
        }
        second-future{
            0{"Trong 0 giây"}
            1{"Trong 1 giây"}
            other{"Trong {0} giây"}
        }
        second-past{
            0{"0 giây trước"}
            1{"1 giây trước"}
            other{"{0} giây trước"}
        }
        week{
            other{"{0} tuần"}
        }
        week-future{
            0{"Trong 0 tuần"}
            1{"Trong 1 tuần"}
            other{"Trong {0} tuần"}
        }
        week-past{
            0{"0 tuần trước"}
            1{"1 tuần trước"}
            other{"{0} tuần trước"}
        }
        year{
            other{"{0} năm"}
        }
        year-future{
            0{"Trong 0 năm"}
            1{"Trong 1 năm"}
            other{"Trong {0} năm"}
        }
        year-past{
            0{"0 năm trước"}
            1{"1 năm trước"}
            other{"{0} năm trước"}
        }
    }
    unitsShort{
        day{
            other{"{0} ngày"}
        }
        hour{
            other{"{0} g"}
        }
        minute{
            other{"{0} ph"}
        }
        month{
            other{"{0} tháng"}
        }
        second{
            other{"{0} s"}
        }
        week{
            other{"{0} tuần"}
        }
        year{
            other{"{0} năm"}
        }
    }
}
