﻿// ***************************************************************************
// *
// * Copyright (C) 2011 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/ca.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/ca.xml
 */
ca{
    Countries{
        001{"Món"}
        002{"Àfrica"}
        003{"Amèrica del Nord"}
        005{"Amèrica del Sud"}
        009{"Oceania"}
        011{"Àfrica Occidental"}
        013{"Amèrica Central"}
        014{"Àfrica Oriental"}
        015{"Àfrica septentrional"}
        017{"Àfrica Central"}
        018{"Àfrica meridional"}
        019{"Amèrica"}
        021{"Amèrica septentrional"}
        029{"Carib"}
        030{"Àsia Oriental"}
        034{"Àsia meridional"}
        035{"Àsia Sud-oriental"}
        039{"Europa meridional"}
        053{"Austràlia i Nova Zelanda"}
        054{"Melanèsia"}
        057{"Regió de la Micronèsia"}
        061{"Polinèsia"}
        062{"Àsia Sud-central"}
        142{"Àsia"}
        143{"Àsia Central"}
        145{"Àsia Occidental"}
        150{"Europa"}
        151{"Europa Oriental"}
        154{"Europa septentrional"}
        155{"Europa Occidental"}
        172{"Comunitat d'Estats Independents"}
        419{"Amèrica Llatina"}
        AC{"Illa de l'Ascensió"}
        AD{"Andorra"}
        AE{"Unió dels Emirats Àrabs"}
        AF{"Afganistan"}
        AG{"Antigua i Barbuda"}
        AI{"Anguilla"}
        AL{"Albània"}
        AM{"Armènia"}
        AN{"Antilles Neerlandeses"}
        AO{"Angola"}
        AQ{"Antàrtida"}
        AR{"Argentina"}
        AS{"Samoa Americana"}
        AT{"Àustria"}
        AU{"Austràlia"}
        AW{"Aruba"}
        AX{"Illes Åland"}
        AZ{"Azerbaidjan"}
        BA{"Bòsnia i Hercegovina"}
        BB{"Barbados"}
        BD{"Bangla Desh"}
        BE{"Bèlgica"}
        BF{"Burkina Faso"}
        BG{"Bulgària"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benín"}
        BL{"Saint Barthélemy"}
        BM{"Bermudes"}
        BN{"Brunei"}
        BO{"Bolívia"}
        BR{"Brasil"}
        BS{"Bahames"}
        BT{"Bhutan"}
        BV{"Illa Bouvet"}
        BW{"Botswana"}
        BY{"Bielorússia"}
        BZ{"Belize"}
        CA{"Canadà"}
        CC{"Illes Cocos"}
        CD{"Congo - Kinshasa"}
        CF{"República Centreafricana"}
        CG{"Congo - Brazzaville"}
        CH{"Suïssa"}
        CI{"Costa d’Ivori"}
        CK{"Illes Cook"}
        CL{"Xile"}
        CM{"Camerun"}
        CN{"Xina"}
        CO{"Colòmbia"}
        CP{"Illa Clipperton"}
        CR{"Costa Rica"}
        CS{"Sèrbia i Montenegro"}
        CU{"Cuba"}
        CV{"Cap Verd"}
        CX{"Illa Christmas"}
        CY{"Xipre"}
        CZ{"República Txeca"}
        DE{"Alemanya"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Dinamarca"}
        DM{"Dominica"}
        DO{"República Dominicana"}
        DZ{"Algèria"}
        EA{"Ceuta i Melilla"}
        EC{"Equador"}
        EE{"Estònia"}
        EG{"Egipte"}
        EH{"Sàhara Occidental"}
        ER{"Eritrea"}
        ES{"Espanya"}
        ET{"Etiòpia"}
        EU{"Unió Europea"}
        FI{"Finlàndia"}
        FJ{"Fiji"}
        FK{"Illes Malvines"}
        FM{"Micronèsia"}
        FO{"Illes Fèroe"}
        FR{"França"}
        GA{"Gabon"}
        GB{"Regne Unit"}
        GD{"Grenada"}
        GE{"Geòrgia"}
        GF{"Guaiana Francesa"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grenlàndia"}
        GM{"Gàmbia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Guinea Equatorial"}
        GR{"Grècia"}
        GS{"Illes Geòrgia del Sud i Sandwich del Sud"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea Bissau"}
        GY{"Guyana"}
        HK{"Regió administrativa especial xinesa de Hong Kong"}
        HM{"Illa Heard i Illes McDonald"}
        HN{"Hondures"}
        HR{"Croàcia"}
        HT{"Haití"}
        HU{"Hongria"}
        IC{"Illes Canàries"}
        ID{"Indonèsia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Illa de Man"}
        IN{"Índia"}
        IO{"Territori Britànic de l'Oceà Índic"}
        IQ{"Iraq"}
        IR{"Iran"}
        IS{"Islàndia"}
        IT{"Itàlia"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Jordània"}
        JP{"Japó"}
        KE{"Kenya"}
        KG{"Kirguizistan"}
        KH{"Cambodja"}
        KI{"Kiribati"}
        KM{"Comores"}
        KN{"Saint Christopher i Nevis"}
        KP{"Corea del Nord"}
        KR{"Corea del Sud"}
        KW{"Kuwait"}
        KY{"Illes Caiman"}
        KZ{"Kazakhstan"}
        LA{"Laos"}
        LB{"Líban"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Libèria"}
        LS{"Lesotho"}
        LT{"Lituània"}
        LU{"Luxemburg"}
        LV{"Letònia"}
        LY{"Líbia"}
        MA{"Marroc"}
        MC{"Mònaco"}
        MD{"Moldàvia"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagascar"}
        MH{"Illes Marshall"}
        MK{"Macedònia"}
        ML{"Mali"}
        MM{"Myanmar [Birmània]"}
        MN{"Mongòlia"}
        MO{"Regió administrativa especial xinesa de Macau"}
        MP{"Illes Mariannes del Nord"}
        MQ{"Martinica"}
        MR{"Mauritània"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Maurici"}
        MV{"Maldives"}
        MW{"Malawi"}
        MX{"Mèxic"}
        MY{"Malàisia"}
        MZ{"Moçambic"}
        NA{"Namíbia"}
        NC{"Nova Caledònia"}
        NE{"Níger"}
        NF{"Illa Norfolk"}
        NG{"Nigèria"}
        NI{"Nicaragua"}
        NL{"Països Baixos"}
        NO{"Noruega"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nova Zelanda"}
        OM{"Oman"}
        PA{"Panamà"}
        PE{"Perú"}
        PF{"Polinèsia Francesa"}
        PG{"Papua Nova Guinea"}
        PH{"Filipines"}
        PK{"Pakistan"}
        PL{"Polònia"}
        PM{"Saint Pierre i Miquelon"}
        PN{"Illes Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestina"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguai"}
        QA{"Qatar"}
        QO{"Territoris allunyats d'Oceania"}
        RE{"Illa de la Reunió"}
        RO{"Romania"}
        RS{"Sèrbia"}
        RU{"Rússia"}
        RW{"Rwanda"}
        SA{"Aràbia Saudita"}
        SB{"Illes Salomó"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Suècia"}
        SG{"Singapur"}
        SH{"Saint Helena"}
        SI{"Eslovènia"}
        SJ{"Svalbard i Jan Mayen"}
        SK{"Eslovàquia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somàlia"}
        SR{"Surinam"}
        ST{"São Tomé i Príncipe"}
        SV{"El Salvador"}
        SY{"Síria"}
        SZ{"Swazilàndia"}
        TA{"Tristão da Cunha"}
        TC{"Illes Turks i Caicos"}
        TD{"Txad"}
        TF{"Territoris Francesos del Sud"}
        TG{"Togo"}
        TH{"Tailàndia"}
        TJ{"Tadjikistan"}
        TK{"Tokelau"}
        TL{"Timor Oriental"}
        TM{"Turkmenistan"}
        TN{"Tunísia"}
        TO{"Tonga"}
        TR{"Turquia"}
        TT{"Trinitat i Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzània"}
        UA{"Ucraïna"}
        UG{"Uganda"}
        UM{"Illes Perifèriques Menors dels EUA"}
        US{"Estats Units"}
        UY{"Uruguai"}
        UZ{"Uzbekistan"}
        VA{"Vaticà"}
        VC{"Saint Vincent i les Grenadines"}
        VE{"Veneçuela"}
        VG{"Illes Verges Britàniques"}
        VI{"Illes Verges Nord-americanes"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis i Futuna"}
        WS{"Samoa"}
        YE{"Iemen"}
        YT{"Mayotte"}
        ZA{"República de Sud-àfrica"}
        ZM{"Zàmbia"}
        ZW{"Zimbabwe"}
        ZZ{"Regió desconeguda o no vàlida"}
    }
    Version{"2.0.59.68"}
}
