﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/kea.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/kea.xml
 */
kea{
    Countries{
        001{"Mundu"}
        002{"Afrika"}
        003{"Merka di Norti"}
        005{"Merka di Sul"}
        009{"Oseania"}
        011{"Afrika Osidental"}
        013{"Merka Sentral"}
        014{"Afrika Oriental"}
        015{"Norti di Afrika"}
        017{"Afrika Sentral"}
        018{"Sul di Afrika"}
        019{"Merkas"}
        021{"Norti di Merka"}
        029{"Karaibas"}
        030{"Azia Oriental"}
        034{"Sul di Azia"}
        035{"Sudesti Aziatiku"}
        039{"Europa di Sul"}
        053{"Australazia"}
        054{"Melanezia"}
        057{"Rejiãu di Mikronezia"}
        061{"Polinezia"}
        142{"Azia"}
        143{"Azia Sentral"}
        145{"Azia Osidental"}
        150{"Europa"}
        151{"Europa Oriental"}
        154{"Europa di Norti"}
        155{"Europa Osidental"}
        419{"Merka Latinu"}
        AC{"Ilha di Asensãu"}
        AD{"Andora"}
        AE{"Emiradus Arabi Unidu"}
        AF{"Afeganistãu"}
        AG{"Antigua i Barbuda"}
        AI{"Angila"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antilhas Olandeza"}
        AO{"Angola"}
        AQ{"Antartika"}
        AR{"Arjentina"}
        AS{"Samoa Merkanu"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Ilhas Åland"}
        AZ{"Azerbaijãu"}
        BA{"Bosnia-Erzegovina"}
        BB{"Barbadus"}
        BD{"Bangladexi"}
        BE{"Béljika"}
        BF{"Burkina Fasu"}
        BG{"Bulgaria"}
        BH{"Barain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Sãu Bartolomeu"}
        BM{"Bermudas"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Karaibas olandes"}
        BR{"Brazil"}
        BS{"Baamas"}
        BT{"Butãu"}
        BV{"Ilha Buve"}
        BW{"Botsuana"}
        BY{"Belarus"}
        BZ{"Belizi"}
        CA{"Kanadá"}
        CC{"Ilhas Kokus"}
        CD{"Kongu - Kinxasa"}
        CF{"Republika Sentru-Afrikanu"}
        CG{"Kongu - Brazavili"}
        CH{"Suisa"}
        CI{"Kosta di Marfin"}
        CK{"Ilhas Kuk"}
        CL{"Xili"}
        CM{"Kamarõis"}
        CN{"Xina"}
        CO{"Kulombia"}
        CP{"Ilha Kliperton"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Kabu Verdi"}
        CW{"Kurasau"}
        CX{"Ilha di Natal"}
        CY{"Xipri"}
        CZ{"Republika Txeka"}
        DE{"Alimanha"}
        DG{"Diegu Garsia"}
        DJ{"Djibuti"}
        DK{"Dinamarka"}
        DM{"Dominika"}
        DO{"Repúblika Dominikana"}
        DZ{"Arjelia"}
        EA{"Seuta i Melila"}
        EC{"Ekuador"}
        EE{"Stonia"}
        EG{"Ejitu"}
        EH{"Sara Osidental"}
        ER{"Iritreia"}
        ES{"Spanha"}
        ET{"Itiopia"}
        EU{"Uniãu Europeia"}
        FI{"Finlandia"}
        FJ{"Fidji"}
        FK{"Ilhas Malvinas"}
        FM{"Mikronezia"}
        FO{"Ilhas Faroe"}
        FR{"Fransa"}
        GA{"Gabãu"}
        GB{"Reinu Unidu"}
        GD{"Granada"}
        GE{"Jiorjia"}
        GF{"Giana Franseza"}
        GG{"Gernzi"}
        GH{"Gana"}
        GI{"Jibraltar"}
        GL{"Gronelandia"}
        GM{"Gambia"}
        GN{"Gine"}
        GP{"Guadalupi"}
        GQ{"Gine Ekuatorial"}
        GR{"Gresia"}
        GS{"Jeórjia di Sul i Ilhas di Sanduixi di Sul"}
        GT{"Guatimala"}
        GU{"Guam"}
        GW{"Gine-Bisau"}
        GY{"Giana"}
        HK{"Rejiãu Administrativu Special di Ong Kong"}
        HM{"Ilha Heard i Ilhas McDonald"}
        HN{"Onduras"}
        HR{"Kroasia"}
        HT{"Aiti"}
        HU{"Ungria"}
        IC{"Kanárias"}
        ID{"Indonezia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Ilha di Man"}
        IN{"India"}
        IO{"Ilhas Britanika di Indiku"}
        IQ{"Iraki"}
        IR{"Iron"}
        IS{"Islandia"}
        IT{"Italia"}
        JE{"Jersi"}
        JM{"Jamaika"}
        JO{"Jordania"}
        JP{"Japãu"}
        KE{"Kenia"}
        KG{"Kirgiston"}
        KH{"Kambodja"}
        KI{"Kiribati"}
        KM{"Kamoris"}
        KN{"Sãu Kristovãu i Nevis"}
        KP{"Koreia di Norti"}
        KR{"Koreia di Sul"}
        KW{"Kueiti"}
        KY{"Ilhas Kaimãu"}
        KZ{"Kazakistãu"}
        LA{"Laus"}
        LB{"Libanu"}
        LC{"Santa Lúsia"}
        LI{"Lixenstain"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lezotu"}
        LT{"Lituania"}
        LU{"Luxemburgu"}
        LV{"Letonia"}
        LY{"Libia"}
        MA{"Marokus"}
        MC{"Monaku"}
        MD{"Moldavia"}
        ME{"Montenegru"}
        MF{"Sãu Martinhu di Fransa"}
        MG{"Madagaskar"}
        MH{"Ilhas Marxal"}
        MK{"Masidonia"}
        ML{"Mali"}
        MM{"Mianmar"}
        MN{"Mongolia"}
        MO{"Rejiãu Administrativu Special di Makau"}
        MP{"Ilhas Marianas di Norti"}
        MQ{"Martinika"}
        MR{"Mauritania"}
        MS{"Monserat"}
        MT{"Malta"}
        MU{"Ilhas Maurisia"}
        MV{"Maldivas"}
        MW{"Malaui"}
        MX{"Mexiku"}
        MY{"Malazia"}
        MZ{"Musambiki"}
        NA{"Namibia"}
        NC{"Nova Kalidonia"}
        NE{"Nijer"}
        NF{"Ilhas Norfolk"}
        NG{"Nijeria"}
        NI{"Nikaragua"}
        NL{"Olanda"}
        NO{"Noruega"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nova Zilandia"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinezia Franseza"}
        PG{"Papua-Nova Gine"}
        PH{"Filipinas"}
        PK{"Pakistãu"}
        PL{"Pulonia"}
        PM{"San Piere i Mikelon"}
        PN{"Pirkairn"}
        PR{"Portu Riku"}
        PS{"Palistina"}
        PT{"Purtugal"}
        PW{"Palau"}
        PY{"Paraguai"}
        QA{"Katar"}
        QO{"Oseania Insular"}
        RE{"Runion"}
        RO{"Romenia"}
        RS{"Servia"}
        RU{"Rúsia"}
        RW{"Ruanda"}
        SA{"Arabia Saudita"}
        SB{"Ilhas Salumon"}
        SC{"Seixelis"}
        SD{"Sudãu"}
        SE{"Suesia"}
        SG{"Singapura"}
        SH{"Santa Ilena"}
        SI{"Slovenia"}
        SJ{"Svalbard i Jan Maien"}
        SK{"Slovakia"}
        SL{"Sera Lioa"}
        SM{"San Marinu"}
        SN{"Senegal"}
        SO{"Sumalia"}
        SR{"Surinami"}
        SS{"Sudãu di Sul"}
        ST{"Sãu Tume i Prinsipi"}
        SV{"El Salvador"}
        SX{"Sãu Martinhu di Olanda"}
        SY{"Siria"}
        SZ{"Suazilándia"}
        TA{"Tristan da Kunha"}
        TC{"Ilhas Turkas i Kaikus"}
        TD{"Txadi"}
        TF{"Terras Franses di Sul"}
        TG{"Togu"}
        TH{"Tailandia"}
        TJ{"Tadjikistãu"}
        TK{"Tokelau"}
        TL{"Timor Lesti"}
        TM{"Turkumenistãu"}
        TN{"Tunizia"}
        TO{"Tonga"}
        TR{"Turkia"}
        TT{"Trinidad i Tobagu"}
        TV{"Tuvalu"}
        TW{"Taiuan"}
        TZ{"Tanzania"}
        UA{"Ukrania"}
        UG{"Uganda"}
        UM{"Ilhas Minoris Distantis de Stadus Unidus"}
        US{"Stadus Unidos di Merka"}
        UY{"Uruguai"}
        UZ{"Uzbekistãu"}
        VA{"Vatikanu"}
        VC{"Sãu Bisenti i Granadinas"}
        VE{"Vinizuea"}
        VG{"Ilhas Virjens Britanikas"}
        VI{"Ilhas Virjens Merkanu"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Ualis i Futuna"}
        WS{"Samoa"}
        YE{"Iemen"}
        YT{"Maiote"}
        ZA{"Afrika di Sul"}
        ZM{"Zambia"}
        ZW{"Zimbabui"}
        ZZ{"Rejiãu Diskonxedu"}
    }
    Version{"2.0.82.45"}
}
