﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/eu.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/eu.xml
 */
eu{
    Countries{
        001{"Mundua"}
        002{"Afrika"}
        003{"Ipar Amerika"}
        005{"Hego Amerika"}
        009{"Ozeania"}
        011{"Afrika mendebaldea"}
        013{"Erdialdeko Amerika"}
        014{"Afrika ekialdea"}
        015{"Afrika iparraldea"}
        017{"Erdialdeko Afrika"}
        018{"Afrika hegoaldea"}
        019{"Amerika"}
        021{"Amerika iparraldea"}
        029{"Karibea"}
        030{"Asia ekialdea"}
        034{"Asia hegoaldea"}
        035{"Asia hego-ekialdea"}
        039{"Europa hegoaldea"}
        053{"Australia eta Zeelanda Berria"}
        054{"Melanesiera"}
        057{"Mikronesia eskualdea"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia erdialdea"}
        145{"Asia mendebaldea"}
        150{"Europa"}
        151{"Europa ekialdea"}
        154{"Europa iparraldea"}
        155{"Europa mendebaldea"}
        419{"Latinoamerika"}
        AC{"Ascension Uhartea"}
        AD{"Andorra"}
        AE{"Arabiar Emirrerri Batuak"}
        AF{"Afganistan"}
        AG{"Antigua eta Barbuda"}
        AI{"Angila"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Holandarren Antillak"}
        AO{"Angola"}
        AQ{"Antartika"}
        AR{"Argentina"}
        AS{"Amerikar Samoa"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Aland uharteak"}
        AZ{"Azerbaijan"}
        BA{"Bosnia-Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgika"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"San Bartolome"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolibia"}
        BQ{"Karibeko Holanda"}
        BR{"Brasil"}
        BS{"Bahamak"}
        BT{"Bhutan"}
        BV{"Bouvet Uhartea"}
        BW{"Botswana"}
        BY{"Bielorrusia"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Cocos [Keeling] uharteak"}
        CD{"Kongoko Errepublika Demokratikoa"}
        CF{"Afrika Erdiko Errepublika"}
        CG{"Kongo (Brazzaville)"}
        CH{"Suitza"}
        CI{"Boli Kosta"}
        CK{"Cook uharteak"}
        CL{"Txile"}
        CM{"Kamerun"}
        CN{"Txina"}
        CO{"Kolonbia"}
        CP{"Clipperton uhartea"}
        CR{"Costa Rica"}
        CU{"Kuba"}
        CV{"Cabo Verde"}
        CW{"Curaçao"}
        CX{"Christmas uhartea"}
        CY{"Zipre"}
        CZ{"Txekiar errepublika"}
        DE{"Alemania"}
        DG{"Diego Garcia"}
        DJ{"Djibuti"}
        DK{"Danimarka"}
        DM{"Dominika"}
        DO{"Dominikar Errepublika"}
        DZ{"Aljeria"}
        EA{"Ceuta eta Melilla"}
        EC{"Ekuador"}
        EE{"Estonia"}
        EG{"Egipto"}
        EH{"Mendebaldeko Sahara"}
        ER{"Eritrea"}
        ES{"Espainia"}
        ET{"Etiopia"}
        EU{"Europar Batasuna"}
        FI{"Finlandia"}
        FJ{"Fiji"}
        FK{"Malvinak"}
        FM{"Mikronesia"}
        FO{"Faroe Uharteak"}
        FR{"Frantzia"}
        GA{"Gabon"}
        GB{"Erresuma Batua"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guyana Frantsesa"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Groenlandia"}
        GM{"Gambia"}
        GN{"Ginea"}
        GP{"Guadalupe"}
        GQ{"Ekuatore Ginea"}
        GR{"Grezia"}
        GS{"Hegoaldeko Georgia eta Hegoaldeko Sandwich uharteak"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Ginea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong AEB Txina"}
        HM{"Heard eta McDonald Uharteak"}
        HN{"Honduras"}
        HR{"Kroazia"}
        HT{"Haiti"}
        HU{"Hungaria"}
        IC{"Kanariak"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Man uhartea"}
        IN{"India"}
        IO{"Indiako Ozeanoko Britainiar Lurraldea"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Islandia"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaika"}
        JO{"Jordania"}
        JP{"Japonia"}
        KE{"Kenia"}
        KG{"Kirgizistan"}
        KH{"Kanbodia"}
        KI{"Kiribati"}
        KM{"Komoreak"}
        KN{"Saint Kitts eta Nevis"}
        KP{"Ipar Korea"}
        KR{"Hego Korea"}
        KW{"Kuwait"}
        KY{"Kaiman Uharteak"}
        KZ{"Kazakhstan"}
        LA{"Laos"}
        LB{"Libano"}
        LC{"Santa Luzia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luxenburgo"}
        LV{"Letonia"}
        LY{"Libia"}
        MA{"Maroko"}
        MC{"Monako"}
        MD{"Moldavia"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagaskar"}
        MH{"Marshall uharteak"}
        MK{"Mazedonia"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MO{"Makau"}
        MP{"Iparraldeko Mariana uharteak"}
        MQ{"Martinika"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Maurizio"}
        MV{"Maldivak"}
        MW{"Malawi"}
        MX{"Mexiko"}
        MY{"Malasia"}
        MZ{"Mozambike"}
        NA{"Namibia"}
        NC{"Kaledonia Berria"}
        NE{"Niger"}
        NF{"Norfolk uhartea"}
        NG{"Nigeria"}
        NI{"Nikaragua"}
        NL{"Herbehereak"}
        NO{"Norvegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Zeelanda Berria"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesia Frantsesa"}
        PG{"Papua Ginea Berria"}
        PH{"Filipinak"}
        PK{"Pakistan"}
        PL{"Polonia"}
        PM{"Saint-Pierre eta Mikelune"}
        PN{"Pitcairn uharteak"}
        PR{"Puerto Rico"}
        PS{"Palestinako Lurraldeak"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguai"}
        QA{"Katar"}
        QO{"Mugaz kanpoko Ozeania"}
        RE{"Reunion"}
        RO{"Errumania"}
        RS{"Serbia"}
        RU{"Errusia"}
        RW{"Ruanda"}
        SA{"Saudi Arabia"}
        SB{"Salomon uharteak"}
        SC{"Seychelleak"}
        SD{"Sudan"}
        SE{"Suedia"}
        SG{"Singapur"}
        SH{"Saint Helena"}
        SI{"Eslovenia"}
        SJ{"Svalbard eta Jan Mayen uharteak"}
        SK{"Eslovakia"}
        SL{"Sierra Leona"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        SS{"Hego Sudan"}
        ST{"Sao Tome eta Principe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Siria"}
        SZ{"Swazilandia"}
        TA{"Tristan da Cunha"}
        TC{"Turk eta Caicos uharteak"}
        TD{"Txad"}
        TF{"Frantziaren Lurralde Australak"}
        TG{"Togo"}
        TH{"Tailandia"}
        TJ{"Tadjikistan"}
        TK{"Tokelau"}
        TL{"Ekialdeko Timor"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turkia"}
        TT{"Trinidad eta Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"Estatu Batuetatik urruti dauden uharte txikiak"}
        US{"Ameriketako Estatu Batuak"}
        UY{"Uruguai"}
        UZ{"Uzbekistan"}
        VA{"Vatikano Hiria"}
        VC{"Saint Vincent eta Grenadinak"}
        VE{"Venezuela"}
        VG{"Birjina uharte britainiarrak"}
        VI{"Birjina uharte amerikarrak"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis eta Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Hegoafrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Eskualde ezezaguna"}
    }
    Version{"2.0.86.71"}
}
