// ***************************************************************************
// *
// *   Copyright (C) 1997-2002, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************

vi {
    Version { "1.1" }
    CollationElements { 
        Version { "2.0" }
        Sequence { "[normalization on]&\u0300;\u0309;\u0303;\u0301;"
        "\u0323;\u0306;\u0302;\u031B"
        "&D<\u0111,\u0110" }
    }
    Countries {
        VN { "Vi\u1EC7t Nam" }
    }
    Languages {
        vi { "Ti\u1EBFng Vi\u1EC7t" }
    }
    DateTimePatterns {
        "HH:mm:ss z",
        "HH:mm:ss z",
        "HH:mm:ss",
        "HH:mm",
        "EEEE dd MMMM yyyy",
        "EEE dd MMM yyyy",
        "dd MMM yyyy",
        "dd/MM/yy",
        "{0} {1}",
    }
    DayAbbreviations {
        "Th 2",
        "Th 3",
        "Th 4",
        "Th 5",
        "Th 6",
        "Th 7",
        "CN",
    }
    DayNames {
        "Th\u01B0\u0301 hai",
        "Th\u01B0\u0301 ba",
        "Th\u01B0\u0301 t\u01B0",
        "Th\u01B0\u0301 n\u0103m",
        "Th\u01B0\u0301 s\u00E1u",
        "Th\u01B0\u0301 ba\u0309y",
        "Chu\u0309 nh\u00E2\u0323t",
    }
    LocaleID:int { 0x002A }
//    LocaleString { "vi" }
    MonthAbbreviations {
        "Thg 1",
        "Thg 2",
        "Thg 3",
        "Thg 4",
        "Thg 5",
        "Thg 6",
        "Thg 7",
        "Thg 8",
        "Thg 9",
        "Thg 10",
        "Thg 11",
        "Thg 12",
    }
    MonthNames {
        "Th\u00E1ng m\u00F4\u0323t",
        "Th\u00E1ng hai",
        "Th\u00E1ng ba",
        "Th\u00E1ng t\u01B0",
        "Th\u00E1ng n\u0103m",
        "Th\u00E1ng s\u00E1u",
        "Th\u00E1ng ba\u0309y",
        "Th\u00E1ng t\u00E1m",
        "Th\u00E1ng ch\u00EDn",
        "Th\u00E1ng m\u01B0\u01A1\u0300i",
        "Th\u00E1ng m\u01B0\u01A1\u0300i m\u00F4\u0323t",
        "Th\u00E1ng m\u01B0\u01A1\u0300i hai",
    }
    NumberElements {
        ",",
        ".",
        ";",
        "%",
        "0",
        "#",
        "-",
        "E",
        "\u2030",
        "\u221E",
        "\uFFFD",
    }
    NumberPatterns {
        "#,##0.###;-#,##0.###",
        "#,##0.00 \u00A4;-#,##0.00 \u00A4",
        "#,##0%",
        "#E0",
    }
//    ShortLanguage { "vie" }
//    LocaleScript{ 
//                "Latn",  // ISO 15924 Name 
//    }
    ExemplarCharacters{ "[a-z \u1EA0-\u1Ef9 \u0111 \u01A1 \u00E0-\u00E3 \u00E8-\u00EA \u00EC \u00ED \u00F2-\u00F5 \u00F9 \u00FA \u00FD \u0103 \u0129 \u0169 \u01B0]" }
}
