﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/vi.xml
// *
// ***************************************************************************
vi{
    Countries{
        001{"Thế giới"}
        002{"Châu Phi"}
        003{"Bắc Mỹ"}
        005{"Nam Mỹ"}
        009{"Châu Đại Dương"}
        011{"Tây Phi"}
        013{"Trung Mỹ"}
        014{"Đông Phi"}
        015{"Bắc Phi"}
        017{"Trung Phi"}
        018{"Miền Nam Châu Phi"}
        019{"Châu Mỹ"}
        021{"Miền Bắc Châu Mỹ"}
        029{"Ca-ri-bê"}
        030{"Đông Á"}
        034{"Nam Á"}
        035{"Đông Nam Á"}
        039{"Nam Âu"}
        053{"Úc và New Zealand"}
        054{"Melanesia"}
        057{"Vùng Micronesian"}
        061{"Polynesia"}
        142{"Châu Á"}
        143{"Trung Á"}
        145{"Tây Á"}
        150{"Châu Âu"}
        151{"Đông Âu"}
        154{"Bắc Âu"}
        155{"Tây Âu"}
        419{"Châu Mỹ La-tinh"}
        AC{"Đảo Ascension"}
        AD{"Andorra"}
        AE{"Các Tiểu V.quốc Ả Rập T.nhất"}
        AF{"Afghanistan"}
        AG{"Antigua và Barbuda"}
        AI{"Anguilla"}
        AL{"Albani"}
        AM{"Armenia"}
        AN{"Tây Ấn Hà Lan"}
        AO{"Angola"}
        AQ{"Nam Cực"}
        AR{"Argentina"}
        AS{"Đảo Somoa thuộc Mỹ"}
        AT{"Áo"}
        AU{"Úc"}
        AW{"Aruba"}
        AX{"Quần đảo Åland"}
        AZ{"Azerbaijan"}
        BA{"Bosnia và Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Bỉ"}
        BF{"Burkina Faso"}
        BG{"Bungari"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"St. Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Ca-ri-bê Hà Lan"}
        BR{"Brazil"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Đảo Bouvet"}
        BW{"Botswana"}
        BY{"Belarus"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Quần đảo Cocos (Keeling)"}
        CD{"Congo - Kinshasa"}
        CF{"Cộng hòa Trung Phi"}
        CG{"Congo - Brazzaville"}
        CH{"Thụy Sĩ"}
        CI{"Bờ Biển Ngà"}
        CK{"Quần đảo Cook"}
        CL{"Chile"}
        CM{"Cameroon"}
        CN{"Trung Quốc"}
        CO{"Colombia"}
        CP{"Đảo Clipperton"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Cape Verde"}
        CW{"Curaçao"}
        CX{"Đảo Giáng Sinh"}
        CY{"Síp"}
        CZ{"Cộng hòa Séc"}
        DE{"Đức"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Đan Mạch"}
        DM{"Dominica"}
        DO{"Cộng hòa Dominica"}
        DZ{"Algeria"}
        EA{"Ceuta và Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Ai Cập"}
        EH{"Tây Sahara"}
        ER{"Eritrea"}
        ES{"Tây Ban Nha"}
        ET{"Ethiopia"}
        EU{"Liên Minh Châu Âu"}
        FI{"Phần Lan"}
        FJ{"Fiji"}
        FK{"Quần đảo Falkland"}
        FM{"Micronesia"}
        FO{"Quần đảo Faroe"}
        FR{"Pháp"}
        GA{"Gabon"}
        GB{"Vương quốc Anh"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guiana thuộc Pháp"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Greenland"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Guinea Xích Đạo"}
        GR{"Hy Lạp"}
        GS{"Quần đảo Nam Georgia và Nam Sandwich"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Hồng Kông"}
        HM{"Quần đảo Heard và McDonald"}
        HN{"Honduras"}
        HR{"Croatia"}
        HT{"Haiti"}
        HU{"Hungari"}
        IC{"Quần đảo Canary"}
        ID{"Indonesia"}
        IE{"Ai-len"}
        IL{"Israel"}
        IM{"Đảo Man"}
        IN{"Ấn Độ"}
        IO{"Thuộc địa Anh tại Ấn Độ Dương"}
        IQ{"I-rắc"}
        IR{"Iran"}
        IS{"Iceland"}
        IT{"Ý"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordan"}
        JP{"Nhật Bản"}
        KE{"Kenya"}
        KG{"Kyrgyzstan"}
        KH{"Campuchia"}
        KI{"Kiribati"}
        KM{"Comoros"}
        KN{"St. Kitts và Nevis"}
        KP{"Triều Tiên"}
        KR{"Hàn Quốc"}
        KW{"Cô-oét"}
        KY{"Quần đảo Cayman"}
        KZ{"Kazakhstan"}
        LA{"Lào"}
        LB{"Li-băng"}
        LC{"St. Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lít-va"}
        LU{"Luxembourg"}
        LV{"Latvia"}
        LY{"Li-bi"}
        MA{"Ma-rốc"}
        MC{"Monaco"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"St. Martin"}
        MG{"Madagascar"}
        MH{"Quần đảo Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar (Miến Điện)"}
        MN{"Mông Cổ"}
        MO{"Macao"}
        MP{"Quần đảo Bắc Mariana"}
        MQ{"Martinique"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldives"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Malaysia"}
        MZ{"Mozambique"}
        NA{"Namibia"}
        NC{"New Caledonia"}
        NE{"Niger"}
        NF{"Đảo Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Hà Lan"}
        NO{"Na Uy"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"New Zealand"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polynesia thuộc Pháp"}
        PG{"Papua New Guinea"}
        PH{"Philippin"}
        PK{"Pakistan"}
        PL{"Ba Lan"}
        PM{"Saint Pierre và Miquelon"}
        PN{"Quần đảo Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestine"}
        PT{"Bồ Đào Nha"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Vùng xa xôi thuộc Châu Đại Dương"}
        RE{"Réunion"}
        RO{"Romania"}
        RS{"Serbia"}
        RU{"Nga"}
        RW{"Rwanda"}
        SA{"Ả Rập Xê-út"}
        SB{"Quần đảo Solomon"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Thụy Điển"}
        SG{"Singapore"}
        SH{"St. Helena"}
        SI{"Slovenia"}
        SJ{"Svalbard và Jan Mayen"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somali"}
        SR{"Suriname"}
        SS{"Nam Sudan"}
        ST{"São Tomé và Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Syria"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Quần đảo Turk và Caicos"}
        TD{"Chad"}
        TF{"Lãnh thổ miền nam nước Pháp"}
        TG{"Togo"}
        TH{"Thái Lan"}
        TJ{"Tajikistan"}
        TK{"Tokelau"}
        TL{"Đông Timor"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Thổ Nhĩ Kỳ"}
        TT{"Trinidad và Tobago"}
        TV{"Tuvalu"}
        TW{"Đài Loan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Các đảo nhỏ xa t.tâm thuộc Mỹ"}
        US{"Hoa Kỳ"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Thành Vatican"}
        VC{"St. Vincent và Grenadines"}
        VE{"Venezuela"}
        VG{"Quần đảo Virgin thuộc Anh"}
        VI{"Quần đảo Virgin thuộc Mỹ"}
        VN{"Việt Nam"}
        VU{"Vanuatu"}
        WF{"Wallis và Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Nam Phi"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Vùng không xác định"}
    }
    Countries%short{
        GB{"Vương quốc Anh"}
        US{"Hoa Kỳ"}
    }
    Countries%variant{
        CD{"Cộng hòa Dân chủ Congo"}
        CG{"Cộng hòa Congo"}
        FK{"Quần đảo Falkland (Islas Malvinas)"}
        MK{"Macedonia (FYROM)"}
    }
    Version{"2.1.19.17"}
}
