﻿// ***************************************************************************
// *
// * Copyright (C) 2016 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es.xml
// *
// ***************************************************************************
es{
    Countries{
        001{"Mundo"}
        002{"África"}
        003{"América del Norte"}
        005{"Sudamérica"}
        009{"Oceanía"}
        011{"África occidental"}
        013{"Centroamérica"}
        014{"África oriental"}
        015{"África septentrional"}
        017{"África central"}
        018{"África meridional"}
        019{"América"}
        021{"Norteamérica"}
        029{"Caribe"}
        030{"Asia oriental"}
        034{"Asia meridional"}
        035{"Sudeste asiático"}
        039{"Europa meridional"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Región de Micronesia"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia central"}
        145{"Asia occidental"}
        150{"Europa"}
        151{"Europa oriental"}
        154{"Europa septentrional"}
        155{"Europa occidental"}
        419{"Latinoamérica"}
        AC{"Isla de la Ascensión"}
        AD{"Andorra"}
        AE{"Emiratos Árabes Unidos"}
        AF{"Afganistán"}
        AG{"Antigua y Barbuda"}
        AI{"Anguila"}
        AL{"Albania"}
        AM{"Armenia"}
        AO{"Angola"}
        AQ{"Antártida"}
        AR{"Argentina"}
        AS{"Samoa Americana"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Islas Åland"}
        AZ{"Azerbaiyán"}
        BA{"Bosnia-Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladés"}
        BE{"Bélgica"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Baréin"}
        BI{"Burundi"}
        BJ{"Benín"}
        BL{"San Bartolomé"}
        BM{"Bermudas"}
        BN{"Brunéi"}
        BO{"Bolivia"}
        BQ{"Caribe neerlandés"}
        BR{"Brasil"}
        BS{"Bahamas"}
        BT{"Bután"}
        BV{"Isla Bouvet"}
        BW{"Botsuana"}
        BY{"Bielorrusia"}
        BZ{"Belice"}
        CA{"Canadá"}
        CC{"Islas Cocos"}
        CD{"República Democrática del Congo"}
        CF{"República Centroafricana"}
        CG{"República del Congo"}
        CH{"Suiza"}
        CI{"Costa de Marfil"}
        CK{"Islas Cook"}
        CL{"Chile"}
        CM{"Camerún"}
        CN{"China"}
        CO{"Colombia"}
        CP{"Isla Clipperton"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Cabo Verde"}
        CW{"Curazao"}
        CX{"Isla de Navidad"}
        CY{"Chipre"}
        CZ{"República Checa"}
        DE{"Alemania"}
        DG{"Diego García"}
        DJ{"Yibuti"}
        DK{"Dinamarca"}
        DM{"Dominica"}
        DO{"República Dominicana"}
        DZ{"Argelia"}
        EA{"Ceuta y Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Egipto"}
        EH{"Sáhara Occidental"}
        ER{"Eritrea"}
        ES{"España"}
        ET{"Etiopía"}
        EU{"Unión Europea"}
        FI{"Finlandia"}
        FJ{"Fiyi"}
        FK{"Islas Malvinas"}
        FM{"Micronesia"}
        FO{"Islas Feroe"}
        FR{"Francia"}
        GA{"Gabón"}
        GB{"Reino Unido"}
        GD{"Granada"}
        GE{"Georgia"}
        GF{"Guayana Francesa"}
        GG{"Guernesey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Groenlandia"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadalupe"}
        GQ{"Guinea Ecuatorial"}
        GR{"Grecia"}
        GS{"Islas Georgia del Sur y Sandwich del Sur"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bisáu"}
        GY{"Guyana"}
        HK{"RAE de Hong Kong (China)"}
        HM{"Islas Heard y McDonald"}
        HN{"Honduras"}
        HR{"Croacia"}
        HT{"Haití"}
        HU{"Hungría"}
        IC{"Canarias"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Isla de Man"}
        IN{"India"}
        IO{"Territorio Británico del Océano Índico"}
        IQ{"Irak"}
        IR{"Irán"}
        IS{"Islandia"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordania"}
        JP{"Japón"}
        KE{"Kenia"}
        KG{"Kirguistán"}
        KH{"Camboya"}
        KI{"Kiribati"}
        KM{"Comoras"}
        KN{"San Cristóbal y Nieves"}
        KP{"Corea del Norte"}
        KR{"Corea del Sur"}
        KW{"Kuwait"}
        KY{"Islas Caimán"}
        KZ{"Kazajistán"}
        LA{"Laos"}
        LB{"Líbano"}
        LC{"Santa Lucía"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesoto"}
        LT{"Lituania"}
        LU{"Luxemburgo"}
        LV{"Letonia"}
        LY{"Libia"}
        MA{"Marruecos"}
        MC{"Mónaco"}
        MD{"Moldavia"}
        ME{"Montenegro"}
        MF{"San Martín"}
        MG{"Madagascar"}
        MH{"Islas Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar (Birmania)"}
        MN{"Mongolia"}
        MO{"RAE de Macao (China)"}
        MP{"Islas Marianas del Norte"}
        MQ{"Martinica"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauricio"}
        MV{"Maldivas"}
        MW{"Malaui"}
        MX{"México"}
        MY{"Malasia"}
        MZ{"Mozambique"}
        NA{"Namibia"}
        NC{"Nueva Caledonia"}
        NE{"Níger"}
        NF{"Isla Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Países Bajos"}
        NO{"Noruega"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nueva Zelanda"}
        OM{"Omán"}
        PA{"Panamá"}
        PE{"Perú"}
        PF{"Polinesia Francesa"}
        PG{"Papúa Nueva Guinea"}
        PH{"Filipinas"}
        PK{"Pakistán"}
        PL{"Polonia"}
        PM{"San Pedro y Miquelón"}
        PN{"Islas Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Territorios Palestinos"}
        PT{"Portugal"}
        PW{"Palaos"}
        PY{"Paraguay"}
        QA{"Catar"}
        QO{"Territorios alejados de Oceanía"}
        RE{"Reunión"}
        RO{"Rumanía"}
        RS{"Serbia"}
        RU{"Rusia"}
        RW{"Ruanda"}
        SA{"Arabia Saudí"}
        SB{"Islas Salomón"}
        SC{"Seychelles"}
        SD{"Sudán"}
        SE{"Suecia"}
        SG{"Singapur"}
        SH{"Santa Elena"}
        SI{"Eslovenia"}
        SJ{"Svalbard y Jan Mayen"}
        SK{"Eslovaquia"}
        SL{"Sierra Leona"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        SS{"Sudán del Sur"}
        ST{"Santo Tomé y Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Siria"}
        SZ{"Suazilandia"}
        TA{"Tristán da Cunha"}
        TC{"Islas Turcas y Caicos"}
        TD{"Chad"}
        TF{"Territorios Australes Franceses"}
        TG{"Togo"}
        TH{"Tailandia"}
        TJ{"Tayikistán"}
        TK{"Tokelau"}
        TL{"Timor Oriental"}
        TM{"Turkmenistán"}
        TN{"Túnez"}
        TO{"Tonga"}
        TR{"Turquía"}
        TT{"Trinidad y Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwán"}
        TZ{"Tanzania"}
        UA{"Ucrania"}
        UG{"Uganda"}
        UM{"Islas menores alejadas de EE. UU."}
        US{"Estados Unidos"}
        UY{"Uruguay"}
        UZ{"Uzbekistán"}
        VA{"Ciudad del Vaticano"}
        VC{"San Vicente y las Granadinas"}
        VE{"Venezuela"}
        VG{"Islas Vírgenes Británicas"}
        VI{"Islas Vírgenes de EE. UU."}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis y Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Sudáfrica"}
        ZM{"Zambia"}
        ZW{"Zimbabue"}
        ZZ{"Región desconocida"}
    }
    Countries%short{
        GB{"RU"}
        HK{"Hong Kong"}
        MO{"Macao"}
        PS{"Palestina"}
        US{"EE. UU."}
    }
    Countries%variant{
        CD{"Congo (República Democrática del Congo)"}
        CG{"Congo (República)"}
        FK{"Islas Malvinas (Islas Falkland)"}
        MK{"Macedonia (ERYM)"}
    }
    Version{"2.1.23.18"}
}
