﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/br.xml
// *
// ***************************************************************************
br{
    Countries{
        001{"Bed"}
        002{"Afrika"}
        003{"Norzhamerika"}
        005{"Suamerika"}
        009{"Oseania"}
        011{"Afrika ar Cʼhornôg"}
        013{"Kreizamerika"}
        014{"Afrika ar Reter"}
        015{"Afrika an Norzh"}
        017{"Afrika ar Cʼhreiz"}
        018{"Afrika ar Su"}
        019{"Amerikaoù"}
        021{"Amerika an Norzh"}
        029{"Karib"}
        030{"Azia ar Reter"}
        034{"Azia ar Su"}
        035{"Azia ar Gevred"}
        039{"Europa ar Su"}
        053{"Aostralazia"}
        054{"Melanezia"}
        057{"Rannved Mikronezia"}
        061{"Polinezia"}
        142{"Azia"}
        143{"Azia ar Cʼhreiz"}
        145{"Azia ar Cʼhornôg"}
        150{"Europa"}
        151{"Europa ar Reter"}
        154{"Europa an Norzh"}
        155{"Europa ar Cʼhornôg"}
        419{"Amerika Latin"}
        AC{"Enez Ascension"}
        AD{"Andorra"}
        AE{"Emirelezhioù Arab Unanet"}
        AF{"Afghanistan"}
        AG{"Antigua ha Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antilhez Nederlandat"}
        AO{"Angola"}
        AQ{"Antarktika"}
        AR{"Arcʼhantina"}
        AS{"Samoa Amerikan"}
        AT{"Aostria"}
        AU{"Aostralia"}
        AW{"Aruba"}
        AX{"Inizi Åland"}
        AZ{"Azerbaidjan"}
        BA{"Bosnia ha Herzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Karib Nederlandat"}
        BR{"Brazil"}
        BS{"Bahamas"}
        BT{"Bhoutan"}
        BV{"Enez Bouvet"}
        BW{"Botswana"}
        BY{"Belarus"}
        BZ{"Belize"}
        CA{"Kanada"}
        CC{"Inizi Kokoz"}
        CD{"Kongo - Kinshasa"}
        CF{"Republik Kreizafrikan"}
        CG{"Kongo - Brazzaville"}
        CH{"Suis"}
        CI{"Aod an Olifant"}
        CK{"Inizi Cook"}
        CL{"Chile"}
        CM{"Kameroun"}
        CN{"Sina"}
        CO{"Kolombia"}
        CP{"Enez Clipperton"}
        CR{"Costa Rica"}
        CU{"Kuba"}
        CV{"Kab-Glas"}
        CW{"Curaçao"}
        CX{"Enez Christmas"}
        CY{"Kiprenez"}
        CZ{"Republik Tchek"}
        DE{"Alamagn"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Danmark"}
        DM{"Dominica"}
        DO{"Republik Dominikan"}
        DZ{"Aljeria"}
        EA{"Ceuta ha Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Egipt"}
        EH{"Sahara ar Cʼhornôg"}
        ER{"Eritrea"}
        ES{"Spagn"}
        ET{"Etiopia"}
        EU{"Unaniezh Europa"}
        FI{"Finland"}
        FJ{"Fidji"}
        FK{"Inizi Falkland"}
        FM{"Mikronezia"}
        FO{"Inizi Faero"}
        FR{"Frañs"}
        GA{"Gabon"}
        GB{"Rouantelezh-Unanet"}
        GD{"Grenada"}
        GE{"Jorjia"}
        GF{"Gwiana cʼhall"}
        GG{"Gwernenez"}
        GH{"Ghana"}
        GI{"Jibraltar"}
        GL{"Greunland"}
        GM{"Gambia"}
        GN{"Ginea"}
        GP{"Gwadeloup"}
        GQ{"Ginea ar Cʼheheder"}
        GR{"Gres"}
        GS{"Inizi Georgia ar Su hag Inizi Sandwich ar Su"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Ginea-Bissau"}
        GY{"Guyana"}
        HK{"Hong Kong"}
        HM{"Inizi Heard ha McDonald"}
        HN{"Honduras"}
        HR{"Kroatia"}
        HT{"Haiti"}
        HU{"Hungaria"}
        IC{"Inizi Kanariez"}
        ID{"Indonezia"}
        IE{"Iwerzhon"}
        IL{"Israel"}
        IM{"Enez Vanav"}
        IN{"India"}
        IO{"Tiriad breizhveurat Meurvor Indez"}
        IQ{"Iraq"}
        IR{"Iran"}
        IS{"Island"}
        IT{"Italia"}
        JE{"Jerzenez"}
        JM{"Jamaika"}
        JO{"Jordania"}
        JP{"Japan"}
        KE{"Kenya"}
        KG{"Kyrgyzstan"}
        KH{"Kambodja"}
        KI{"Kiribati"}
        KM{"Komorez"}
        KN{"Saint Kitts ha Nevis"}
        KP{"Korea an Norzh"}
        KR{"Korea ar Su"}
        KW{"Koweit"}
        KY{"Inizi Cayman"}
        KZ{"Kazakstan"}
        LA{"Laos"}
        LB{"Liban"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luksembourg"}
        LV{"Latvia"}
        LY{"Libia"}
        MA{"Maroko"}
        MC{"Monaco"}
        MD{"Moldova"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagaskar"}
        MH{"Inizi Marshall"}
        MK{"Makedonia"}
        ML{"Mali"}
        MM{"Myanmar (Birmania)"}
        MN{"Mongolia"}
        MO{"Macau"}
        MP{"Inizi Mariana an Norzh"}
        MQ{"Martinik"}
        MR{"Maouritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Moris"}
        MV{"Maldivez"}
        MW{"Malawi"}
        MX{"Mecʼhiko"}
        MY{"Malaysia"}
        MZ{"Mozambik"}
        NA{"Namibia"}
        NC{"Kaledonia Nevez"}
        NE{"Niger"}
        NF{"Enez Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Izelvroioù"}
        NO{"Norvegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Zeland-Nevez"}
        OM{"Oman"}
        PA{"Panamá"}
        PE{"Perou"}
        PF{"Polinezia Cʼhall"}
        PG{"Papoua Ginea-Nevez"}
        PH{"Filipinez"}
        PK{"Pakistan"}
        PL{"Polonia"}
        PM{"Sant-Pêr-ha-Mikelon"}
        PN{"Enez Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestina"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oseania diabell"}
        RE{"Ar Reünion"}
        RO{"Roumania"}
        RS{"Serbia"}
        RU{"Rusia"}
        RW{"Rwanda"}
        SA{"Arabia Saoudat"}
        SB{"Inizi Salomon"}
        SC{"Sechelez"}
        SD{"Soudan"}
        SE{"Sveden"}
        SG{"Singapour"}
        SH{"Saint-Helena"}
        SI{"Slovenia"}
        SJ{"Svalbard"}
        SK{"Slovakia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        SS{"Susoudan"}
        ST{"São Tomé ha Príncipe"}
        SV{"Salvador"}
        SX{"Sint Maarten"}
        SY{"Siria"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Inizi Turks ha Caicos"}
        TD{"Tchad"}
        TF{"Douaroù aostral Frañs"}
        TG{"Togo"}
        TH{"Thailand"}
        TJ{"Tadjikistan"}
        TK{"Tokelau"}
        TL{"Timor-Leste"}
        TM{"Turkmenistan"}
        TN{"Tunizia"}
        TO{"Tonga"}
        TR{"Turkia"}
        TT{"Trinidad ha Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ukraina"}
        UG{"Ouganda"}
        UM{"Inizi diabell ar Stadoù-Unanet"}
        US{"Stadoù-Unanet"}
        UY{"Uruguay"}
        UZ{"Ouzbekistan"}
        VA{"Vatikan"}
        VC{"Sant Visant hag ar Grenadinez"}
        VE{"Venezuela"}
        VG{"Inizi Gwercʼh Breizh-Veur"}
        VI{"Inizi Gwercʼh ar Stadoù-Unanet"}
        VN{"Viêt Nam"}
        VU{"Vanuatu"}
        WF{"Wallis ha Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Suafrika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Rannved dianav"}
    }
    Countries%short{
        GB{"RU"}
        US{"SU"}
    }
    Countries%variant{
        CD{"Kongo (RDK)"}
        CG{"Kongo (Republik)"}
        CI{"Aod Olifant"}
        FK{"Inizi Falkland (Inizi Maloù)"}
        MK{"Makedonia (RYKM)"}
        TL{"Timor ar Reter"}
    }
    Version{"2.1.19.94"}
}
