﻿// ***************************************************************************
// *
// * 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/es.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/es.xml
 */
es{
    Countries{
        001{"Mundo"}
        002{"África"}
        003{"América del Norte"}
        005{"Suramérica"}
        009{"Oceanía"}
        011{"África occidental"}
        013{"Centroamérica"}
        014{"África oriental"}
        015{"África septentrional"}
        017{"África central"}
        018{"África meridional"}
        019{"Américas"}
        021{"Norteamérica"}
        029{"Caribe"}
        030{"Asia oriental"}
        034{"Asia meridional"}
        035{"Sudeste asiático"}
        039{"Europa meridional"}
        053{"Australia y Nueva Zelanda"}
        054{"Melanesia"}
        057{"Micronesia [057]"}
        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"}
        AN{"Antillas Neerlandesas"}
        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{"Bangladesh"}
        BE{"Bélgica"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahréin"}
        BI{"Burundi"}
        BJ{"Benín"}
        BL{"San Bartolomé"}
        BM{"Bermudas"}
        BN{"Brunéi"}
        BO{"Bolivia"}
        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{"Congo - Brazzaville"}
        CH{"Suiza"}
        CI{"Costa de Marfil"}
        CK{"Islas Cook"}
        CL{"Chile"}
        CM{"Camerún"}
        CN{"China"}
        CO{"Colombia"}
        CP{"Isla Clipperton"}
        CR{"Costa Rica"}
        CS{"Serbia y Montenegro"}
        CU{"Cuba"}
        CV{"Cabo Verde"}
        CX{"Isla Christmas"}
        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{"Guernsey"}
        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-Bissau"}
        GY{"Guyana"}
        HK{
            "Región Administrativa Especial de Hong Kong de la República Popular Chin"
            "a"
        }
        HM{"Islas Heard y McDonald"}
        HN{"Honduras"}
        HR{"Croacia"}
        HT{"Haití"}
        HU{"Hungría"}
        IC{"Islas Canarias"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Isla de Man"}
        IN{"India"}
        IO{"Territorio Británico del Océano Índico"}
        IQ{"Iraq"}
        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{"Región Administrativa Especial de Macao de la República Popular 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{"Isla 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{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        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"}
        ST{"Santo Tomé y Príncipe"}
        SV{"El Salvador"}
        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 los Estados Unidos"}
        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 los Estados Unidos"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis y Futuna"}
        WS{"Samoa"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Sudáfrica"}
        ZM{"Zambia"}
        ZW{"Zimbabue"}
        ZZ{"Región desconocida"}
    }
    Version{"2.0.64.92"}
}
