﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/gl.xml
// *
// ***************************************************************************
gl{
    Countries{
        001{"Mundo"}
        002{"África"}
        003{"Norteamérica"}
        005{"Sudamérica"}
        009{"Oceanía"}
        011{"África Occidental"}
        013{"América Central"}
        014{"África Oriental"}
        015{"África Septentrional"}
        017{"África Central"}
        018{"África Meridional"}
        019{"América"}
        021{"América do Norte"}
        029{"Caribe"}
        030{"Asia Oriental"}
        034{"Sul de Asia"}
        035{"Sureste Asiático"}
        039{"Europa Meridional"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Rexión da Micronesia"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia Central"}
        145{"Asia Occidental"}
        150{"Europa"}
        151{"Europa do Leste"}
        154{"Europa Septentrional"}
        155{"Europa Occidental"}
        419{"América Latina"}
        AC{"Illa de Ascensión"}
        AD{"Andorra"}
        AE{"Emiratos Árabes Unidos"}
        AF{"Afganistán"}
        AG{"Antiga e Barbuda"}
        AI{"Anguila"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antillas Holandesas"}
        AO{"Angola"}
        AQ{"Antártida"}
        AR{"Arxentina"}
        AS{"Samoa Americana"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Illas Aland"}
        AZ{"Acerbaixán"}
        BA{"Bosnia e Hercegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Bélxica"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"San Bartolomé"}
        BM{"Bermudas"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Caribe neerlandés"}
        BR{"Brasil"}
        BS{"Bahamas"}
        BT{"Bután"}
        BV{"Illa Bouvet"}
        BW{"Botsuana"}
        BY{"Bielorrusia"}
        BZ{"Belice"}
        CA{"Canadá"}
        CC{"Illas Cocos (Keeling)"}
        CD{"República Democrática do Congo"}
        CF{"República Centroafricana"}
        CG{"Congo"}
        CH{"Suíza"}
        CI{"Costa de Marfil"}
        CK{"Illas Cook"}
        CL{"Chile"}
        CM{"Camerún"}
        CN{"China"}
        CO{"Colombia"}
        CP{"Illa Clipperton"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Cabo Verde"}
        CW{"Curaçao"}
        CX{"Illa Christmas"}
        CY{"Chipre"}
        CZ{"República Checa"}
        DE{"Alemaña"}
        DG{"Diego García"}
        DJ{"Djibuti"}
        DK{"Dinamarca"}
        DM{"Dominica"}
        DO{"República Dominicana"}
        DZ{"Arxelia"}
        EA{"Ceuta e Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Exipto"}
        EH{"Sáhara Occidental"}
        ER{"Eritrea"}
        ES{"España"}
        ET{"Etiopía"}
        EU{"Unión Europea"}
        FI{"Finlandia"}
        FJ{"Fixi"}
        FK{"Illas Malvinas"}
        FM{"Micronesia"}
        FO{"Illas Feroe"}
        FR{"Francia"}
        GA{"Gabón"}
        GB{"Reino Unido"}
        GD{"Granada"}
        GE{"Xeorxia"}
        GF{"Güiana Francesa"}
        GG{"Guernsey"}
        GH{"Gana"}
        GI{"Xibraltar"}
        GL{"Grenlandia"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadalupe"}
        GQ{"Guinea Ecuatorial"}
        GR{"Grecia"}
        GS{"Xeorxia do Sur e Illas Sandwich"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Güiana"}
        HK{"Hong Kong"}
        HM{"Illa Heard e Illas McDonald"}
        HN{"Honduras"}
        HR{"Croacia"}
        HT{"Haití"}
        HU{"Hungría"}
        IC{"Illas Canarias"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Illa de Man"}
        IN{"India"}
        IO{"Territorio Británico do Océano Índico"}
        IQ{"Iraq"}
        IR{"Irán"}
        IS{"Islandia"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Xamaica"}
        JO{"Xordania"}
        JP{"Xapón"}
        KE{"Kenya"}
        KG{"Quirguicistán"}
        KH{"Cambodia"}
        KI{"Kiribati"}
        KM{"Comores"}
        KN{"San Cristovo e Nevis"}
        KP{"Corea do Norte"}
        KR{"Corea do Sur"}
        KW{"Kuwait"}
        KY{"Illas Caimán"}
        KZ{"Kazakhstan"}
        LA{"Laos"}
        LB{"Líbano"}
        LC{"Santa Lucía"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luxemburgo"}
        LV{"Letonia"}
        LY{"Libia"}
        MA{"Marrocos"}
        MC{"Mónaco"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"San Martiño"}
        MG{"Madagascar"}
        MH{"Illas Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar (Birmania)"}
        MN{"Mongolia"}
        MO{"Macau"}
        MP{"Illas Marianas do norte"}
        MQ{"Martinica"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauricio"}
        MV{"Maldivas"}
        MW{"Malaui"}
        MX{"México"}
        MY{"Malaisia"}
        MZ{"Mozambique"}
        NA{"Namibia"}
        NC{"Nova Caledonia"}
        NE{"Níxer"}
        NF{"Illa Norfolk"}
        NG{"Nixeria"}
        NI{"Nicaragua"}
        NL{"Países Baixos"}
        NO{"Noruega"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nova Celandia"}
        OM{"Omán"}
        PA{"Panamá"}
        PE{"Perú"}
        PF{"Polinesia Francesa"}
        PG{"Papúa Nova Guinea"}
        PH{"Filipinas"}
        PK{"Paquistán"}
        PL{"Polonia"}
        PM{"San Pedro e Miguelón"}
        PN{"Illas Pitcairn"}
        PR{"Porto Rico"}
        PS{"Palestina"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguai"}
        QA{"Qatar"}
        QO{"Oceanía Distante"}
        RE{"Reunión"}
        RO{"Romanía"}
        RS{"Serbia"}
        RU{"Rusia"}
        RW{"Ruanda"}
        SA{"Arabia Saudita"}
        SB{"Illas Salomón"}
        SC{"Seixeles"}
        SD{"Sudán"}
        SE{"Suecia"}
        SG{"Singapur"}
        SH{"Santa Helena"}
        SI{"Eslovenia"}
        SJ{"Svalbard e Jan Mayen"}
        SK{"Eslovaquia"}
        SL{"Serra Leoa"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        SS{"Sudán do sur"}
        ST{"San Tomé e Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Siria"}
        SZ{"Suacilandia"}
        TA{"Tristán da Cunha"}
        TC{"Illas Turks e Caicos"}
        TD{"Chad"}
        TF{"Territorios Franceses do Sul"}
        TG{"Togo"}
        TH{"Tailandia"}
        TJ{"Taxiquistán"}
        TK{"Tokelau"}
        TL{"Timor Leste"}
        TM{"Turkmenistán"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turquía"}
        TT{"Trindade e Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwán"}
        TZ{"Tanzania"}
        UA{"Ucraína"}
        UG{"Uganda"}
        UM{"Illas Menores Distantes dos EUA."}
        US{"Estados Unidos de América"}
        UY{"Uruguai"}
        UZ{"Uzbekistán"}
        VA{"Cidade do Vaticano"}
        VC{"San Vicente e Granadinas"}
        VE{"Venezuela"}
        VG{"Illas Virxes Británicas"}
        VI{"Illas Virxes Estadounidenses"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis e Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Iemen"}
        YT{"Mayotte"}
        ZA{"Sudáfrica"}
        ZM{"Zambia"}
        ZW{"Cimbabue"}
        ZZ{"Rexión descoñecida"}
    }
    Countries%short{
        GB{"RU"}
        US{"EUA"}
    }
    Countries%variant{
        CD{"Congo (RDC)"}
        CG{"Congo (RC)"}
        CI{"Costa do Marfil"}
        FK{"Illas Malvinas (Falkland)"}
        MK{"Macedonia (ARIM)"}
    }
    Version{"2.1.19.94"}
}
