﻿// ***************************************************************************
// *
// * 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{
    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 Phí"}
        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{"Âu Châu"}
        151{"Đông Âu"}
        154{"Miền Bắc Châu Âu"}
        155{"Tây Âu"}
        419{"Châu Mỹ La-tinh"}
        AC{"Đảo Ascension"}
        AD{"Andorra"}
        AE{"Các Tiểu Vương quốc A-rập Thống nhất"}
        AF{"Áp-ga-ni-xtan"}
        AG{"An-ti-gu-a và Ba-bu-đa"}
        AI{"Anguilla"}
        AL{"An-ba-ni"}
        AM{"Ác-mê-ni-a"}
        AN{"Tây Ấn Hà Lan"}
        AO{"Ăng-gô-la"}
        AQ{"Nam Cực"}
        AR{"Ác-hen-ti-na"}
        AS{"Đảo Somoa thuộc Mỹ"}
        AT{"Áo"}
        AU{"Úc"}
        AW{"Aruba"}
        AX{"Quần đảo Aland"}
        AZ{"Ai-déc-bai-gian"}
        BA{"Bô-xni-a Héc-xê-gô-vi-na"}
        BB{"Bác-ba-đốt"}
        BD{"Băng-la-đét"}
        BE{"Bỉ"}
        BF{"Buốc-ki-na Pha-xô"}
        BG{"Bun-ga-ri"}
        BH{"Ba-ren"}
        BI{"Bu-run-đi"}
        BJ{"Bê-nanh"}
        BM{"Bermuda"}
        BN{"Bru-nây"}
        BO{"Bô-li-vi-a"}
        BR{"Bra-xin"}
        BS{"Ba-ha-ma"}
        BT{"Bu-tan (Bhutan)"}
        BV{"Đảo Bouvet (Na Uy)"}
        BW{"Bốt-xoa-na"}
        BY{"Bê-la-rút"}
        BZ{"Bê-li-xê"}
        CA{"Ca-na-đa"}
        CC{"Quần đảo Cocos"}
        CD{"Cộng hoà dân chủ Côngô"}
        CF{"Cộng hòa Trung Phi"}
        CG{"Công-gô"}
        CH{"Thụy Sĩ"}
        CI{"Bờ Biển Ngà"}
        CK{"Quần Đảo Cook"}
        CL{"Chi-lê"}
        CM{"Ca-mơ-run"}
        CN{"Trung Quốc"}
        CO{"Cô-lôm-bi-a"}
        CP{"Đảo Clipperton"}
        CR{"Cốt-xta Ri-ca"}
        CS{"Séc-bia"}
        CU{"Cu Ba"}
        CV{"Cáp-ve"}
        CX{"Đảo Giáng Sinh"}
        CY{"Síp"}
        CZ{"Cộng hòa Séc"}
        DE{"Đức"}
        DG{"Diego Garcia"}
        DJ{"Gi-bu-ti"}
        DK{"Đan Mạch"}
        DM{"Dominica"}
        DO{"Cộng hoà Đô-mi-ni-ca"}
        DZ{"An-giê-ri"}
        EA{"Ceuta và Melilla"}
        EC{"Ê-cu-a-đo"}
        EE{"E-xtô-ni-a"}
        EG{"Ai Cập"}
        EH{"Tây Sahara"}
        ER{"Ê-ri-tơ-rê-a"}
        ES{"Tây Ban Nha"}
        ET{"Ê-ti-ô-pi-a"}
        EU{"Liên Minh Châu Âu"}
        FI{"Phần Lan"}
        FJ{"Phi-gi"}
        FK{"Quần Đảo Falkland"}
        FM{"Mi-crô-nê-xi-a"}
        FO{"Quần Đảo Faroe"}
        FR{"Pháp"}
        GA{"Ga-bông"}
        GB{"Vương quốc Anh"}
        GD{"Grê-na-đa"}
        GE{"Gru-di-a"}
        GF{"Quiana thuộc Pháp"}
        GG{"Guernsey"}
        GH{"Gha-na"}
        GI{"Gibraltar"}
        GL{"Băng Đảo"}
        GM{"Găm-bi-a"}
        GN{"Ghi-nê"}
        GP{"Guadeloupe"}
        GQ{"Ghi-nê Xích-đạo"}
        GR{"Hy Lạp"}
        GS{"Quần đảo Nam Georgia và Nam Sandwich"}
        GT{"Goa-tê-ma-la"}
        GU{"Đảo Gu-am"}
        GW{"Ghi-nê Bít-xao"}
        GY{"Guy-a-na"}
        HK{"Đặc khu hành chính Hồng Kông thuộc CHND Trung Hoa"}
        HM{"Đảo Heard và Quần đảo McDonald"}
        HN{"Hôn-đu-rát"}
        HR{"Crô-a-ti-a"}
        HT{"Ha-i-ti"}
        HU{"Hung-ga-ri"}
        IC{"Quần đảo Canary"}
        ID{"Nam Dương"}
        IE{"Ai-len"}
        IL{"I-xra-en"}
        IM{"Đảo Man"}
        IN{"Ấn Độ"}
        IO{"Thuộc địa Anh tại Ấn Độ Dương"}
        IQ{"I-rắc"}
        IR{"I-ran"}
        IS{"Ai-xơ-len"}
        IT{"Ý"}
        JE{"Jersey"}
        JM{"Ha-mai-ca"}
        JO{"Gióc-đa-ni"}
        JP{"Nhật Bản"}
        KE{"Kê-ni-a"}
        KG{"Cư-rơ-gư-xtan"}
        KH{"Campuchia"}
        KI{"Ki-ri-ba-ti"}
        KM{"Cô-mô"}
        KN{"Xan-kít và Nê-vi"}
        KP{"Bắc Triều Tiên"}
        KR{"Hàn Quốc"}
        KW{"Cô-oét"}
        KY{"Quần Đảo Cayman"}
        KZ{"Ka-dắc-xtan"}
        LA{"Lào"}
        LB{"Li-băng"}
        LC{"Xan Lu-xi"}
        LI{"Lich-ten-xtên"}
        LK{"Xri Lan-ca"}
        LR{"Li-bê-ri-a"}
        LS{"Lê-xô-thô"}
        LT{"Li-tu-a-ni-a"}
        LU{"Lúc-xăm-bua"}
        LV{"Lát-vi-a"}
        LY{"Li-bi"}
        MA{"Ma-rốc"}
        MC{"Mô-na-cô"}
        MD{"Môn-đô-va"}
        ME{"Montenegro"}
        MG{"Ma-đa-gát-xca"}
        MH{"Quần đảo Mác-san"}
        MK{"Ma-xê-đô-ni-a"}
        ML{"Ma-li"}
        MM{"Mi-an-ma"}
        MN{"Mông Cổ"}
        MO{"Đặc khu hành chính Macao thuộc CHND Trung Hoa"}
        MP{"Quần Đảo Bắc Mariana"}
        MR{"Mô-ri-ta-ni"}
        MS{"Montserrat"}
        MT{"Man-ta"}
        MU{"Mô-ri-xơ"}
        MV{"Man-đi-vơ"}
        MW{"Ma-la-uy"}
        MX{"Mê-hi-cô"}
        MY{"Ma-lay-xi-a"}
        MZ{"Mô-dăm-bích"}
        NA{"Nam-mi-bi-a"}
        NC{"New Caledonia"}
        NE{"Ni-giê"}
        NF{"Đảo Norfolk"}
        NG{"Ni-giê-ri-a"}
        NI{"Ni-ca-ra-goa"}
        NL{"Hà Lan"}
        NO{"Na Uy"}
        NP{"Nê-pan"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Niu Di-lân"}
        OM{"Ô-man"}
        PA{"Pa-na-ma"}
        PE{"Pê-ru"}
        PF{"Polynesia thuộc Pháp"}
        PG{"Pa-pu-a Niu Ghi-nê"}
        PH{"Phi-lip-pin"}
        PK{"Pa-ki-xtan"}
        PL{"Ba Lan"}
        PM{"Saint Pierre và Miquelon"}
        PN{"Quần đảo Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Lãnh thổ Palestine"}
        PT{"Bồ Đào Nha"}
        PW{"Palau"}
        PY{"Pa-ra-goay"}
        QA{"Ca-ta"}
        QO{"Vùng xa xôi thuộc Châu Đại Dương"}
        RO{"Ru-ma-ni"}
        RS{"Xéc-bi"}
        RU{"Nga"}
        RW{"Ru-an-đa"}
        SA{"A-rập Xê-út"}
        SB{"Quần đảo Xô-lô-mông"}
        SC{"Xây-sen"}
        SD{"Xu-đăng"}
        SE{"Thụy Điển"}
        SG{"Xin-ga-po"}
        SH{"Saint Helena"}
        SI{"Xlô-ven-ni-a"}
        SJ{"Svalbard và Jan Mayen"}
        SK{"Xlô-va-ki-a"}
        SL{"Xi-ê-ra Lê-ôn"}
        SM{"Xan Ma-ri-nô"}
        SN{"Xê-nê-gan"}
        SO{"Xô-ma-li"}
        SR{"Xu-ri-nam"}
        ST{"Xao Tô-mê và Prin-xi-pê"}
        SV{"En-san-va-đo"}
        SY{"Xi-ri"}
        SZ{"Xoa-di-len"}
        TA{"Tristan da Cunha"}
        TC{"Quần Đảo Turk và Caicos"}
        TD{"Sát"}
        TF{"Thuộc Địa Nam của Pháp"}
        TG{"Tô-gô"}
        TH{"Thái Lan"}
        TJ{"Tát-gi-ki-xtan"}
        TK{"Tokelau"}
        TL{"Đông Ti-mo"}
        TM{"Tuốc-mê-ni-xtan"}
        TN{"Tuy-ni-di"}
        TO{"Tông-ga"}
        TR{"Thổ Nhĩ Kỳ"}
        TT{"Tri-ni-đát và Tô-ba-gô"}
        TV{"Tu-va-lu"}
        TW{"Đài Loan"}
        TZ{"Tan-da-ni-a"}
        UA{"U-crai-na"}
        UG{"U-gan-đa"}
        UM{"Các đảo nhỏ xa trung tâm thuộc Mỹ"}
        US{"Hoa Kỳ"}
        UY{"U-ru-goay"}
        UZ{"U-dơ-bê-ki-xtan"}
        VA{"Va-ti-căng"}
        VC{"Xan Vin-xen và Grê-na-din"}
        VE{"Vê-nê-zu-ê-la"}
        VG{"Đảo Virgin, thuộc Anh"}
        VI{"Quần đảo Virgin, Mỹ"}
        VN{"Việt Nam"}
        VU{"Va-nu-a-tu"}
        WF{"Wallis và Futuna"}
        WS{"Xa-moa"}
        YE{"Y-ê-men"}
        ZA{"Nam Phi"}
        ZM{"Dăm-bi-a"}
        ZW{"Dim-ba-bu-ê"}
        ZZ{"Vùng Chưa biết hoặc không Hợp lệ"}
    }
    Version{"2.0.67.6"}
}
