﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/ro.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/ro.xml
 */
ro{
    Countries{
        001{"Lume"}
        002{"Africa"}
        003{"America de Nord"}
        005{"America de Sud"}
        009{"Oceania"}
        011{"Africa Occidentală"}
        013{"America Centrală"}
        014{"Africa Orientală"}
        015{"Africa Septentrională"}
        017{"Africa Centrală"}
        018{"Africa Meridională"}
        019{"Americi"}
        021{"America Septentrională"}
        029{"Caraibe"}
        030{"Asia Orientală"}
        034{"Asia Meridională"}
        035{"Asia de Sud-Est"}
        039{"Europa Meridională"}
        053{"Australia și Noua Zeelandă"}
        054{"Melanezia"}
        057{"Regiunea Micronezia"}
        061{"Polinezia"}
        062{"Asia Centrală de Sud"}
        142{"Asia"}
        143{"Asia Centrală"}
        145{"Asia Occidentală"}
        150{"Europa"}
        151{"Europa Orientală"}
        154{"Europa Septentrională"}
        155{"Europa Occidentală"}
        172{"Comunitatea Statelor Independente"}
        419{"America Latină și Caraibe"}
        830{"Insulele Anglo-Normande"}
        AC{"Insula Ascension"}
        AD{"Andorra"}
        AE{"Emiratele Arabe Unite"}
        AF{"Afganistan"}
        AG{"Antigua și Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antilele Olandeze"}
        AO{"Angola"}
        AQ{"Antarctica"}
        AR{"Argentina"}
        AS{"Samoa Americană"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Insulele Aland"}
        AZ{"Azerbaidjan"}
        BA{"Bosnia și Herțegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Sfântul Bartolomeu"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BR{"Brazilia"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Insula Bouvet"}
        BW{"Botswana"}
        BY{"Bielorusia"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Insulele Cocos"}
        CD{"Republica Democrată Congo"}
        CF{"Republica Centrafricană"}
        CG{"Congo"}
        CH{"Eleveția"}
        CI{"Coasta de Fildeș"}
        CK{"Insulele Cook"}
        CL{"Chile"}
        CM{"Camerun"}
        CN{"China"}
        CO{"Columbia"}
        CP{"Insula Clipperton"}
        CR{"Costa Rica"}
        CS{"Serbia și Muntenegru"}
        CU{"Cuba"}
        CV{"Capul Verde"}
        CX{"Insula Christmas"}
        CY{"Cipru"}
        CZ{"Republica Cehă"}
        DE{"Germania"}
        DG{"Diego Garcia"}
        DJ{"Djibouti"}
        DK{"Danemarca"}
        DM{"Dominica"}
        DO{"Republica Dominicană"}
        DZ{"Algeria"}
        EA{"Ceuta şi Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Egipt"}
        EH{"Sahara Occidentală"}
        ER{"Eritreea"}
        ES{"Spania"}
        ET{"Etiopia"}
        EU{"Uniunea Europeană"}
        FI{"Finlanda"}
        FJ{"Fiji"}
        FK{"Insulele Falkland"}
        FM{"Micronezia"}
        FO{"Insulele Feroe"}
        FR{"Franța"}
        GA{"Gabon"}
        GB{"Marea Britanie"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guyana Franceză"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Groenlanda"}
        GM{"Gambia"}
        GN{"Guineea"}
        GP{"Guadelupa"}
        GQ{"Guineea Ecuatorială"}
        GR{"Grecia"}
        GS{"Georgia de Sud şi Insulele Sandwich de Sud"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guineea-Bissau"}
        GY{"Guyana"}
        HK{"R.A.S. Hong Kong a Chinei"}
        HM{"Insula Heard și Insulele McDonald"}
        HN{"Honduras"}
        HR{"Croația"}
        HT{"Haiti"}
        HU{"Ungaria"}
        IC{"Insulele Canare"}
        ID{"Indonezia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Insula Man"}
        IN{"India"}
        IO{"Teritoriul Britanic din Oceanul Indian"}
        IQ{"Irak"}
        IR{"Iran"}
        IS{"Islanda"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Jamaica"}
        JO{"Iordania"}
        JP{"Japonia"}
        KE{"Kenya"}
        KG{"Kârgâzstan"}
        KH{"Cambodgia"}
        KI{"Kiribati"}
        KM{"Comore"}
        KN{"Sfântul Kitts și Nevis"}
        KP{"Coreea de Nord"}
        KR{"Coreea de Sud"}
        KW{"Kuweit"}
        KY{"Insulele Cayman"}
        KZ{"Kazahstan"}
        LA{"Laos"}
        LB{"Liban"}
        LC{"Sfânta Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luxemburg"}
        LV{"Letonia"}
        LY{"Libia"}
        MA{"Maroc"}
        MC{"Monaco"}
        MD{"Republica Moldova"}
        ME{"Muntenegru"}
        MF{"Sfântul Martin"}
        MG{"Madagascar"}
        MH{"Insulele Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MO{"R.A.S. Macao a Chinei"}
        MP{"Insulele Mariane de Nord"}
        MQ{"Martinica"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldive"}
        MW{"Malawi"}
        MX{"Mexic"}
        MY{"Malaezia"}
        MZ{"Mozambic"}
        NA{"Namibia"}
        NC{"Noua Caledonie"}
        NE{"Niger"}
        NF{"Insulele Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Olanda"}
        NO{"Norvegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Noua Zeelandă"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinezia Franceză"}
        PG{"Papua Noua Guinee"}
        PH{"Filipine"}
        PK{"Pakistan"}
        PL{"Polonia"}
        PM{"Sfântul Pierre și Miquelon"}
        PN{"Pitcairn"}
        PR{"Porto Rico"}
        PS{"Teritoriul Palestinian"}
        PT{"Portugalia"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oceania Periferică"}
        RE{"Reunion"}
        RO{"România"}
        RS{"Serbia"}
        RU{"Rusia"}
        RW{"Rwanda"}
        SA{"Arabia Saudită"}
        SB{"Insulele Solomon"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Suedia"}
        SG{"Singapore"}
        SH{"Sfânta Elena"}
        SI{"Slovenia"}
        SJ{"Svalbard și Jan Mayen"}
        SK{"Slovacia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        ST{"Sao Tome și Principe"}
        SV{"El Salvador"}
        SY{"Siria"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Insulele Turks și Caicos"}
        TD{"Ciad"}
        TF{"Teritoriile Australe și Antarctice Franceze"}
        TG{"Togo"}
        TH{"Thailanda"}
        TJ{"Tadjikistan"}
        TK{"Tokelau"}
        TL{"Timorul de Est"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turcia"}
        TT{"Trinidad-Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ucraina"}
        UG{"Uganda"}
        UM{"Insulele Minore Îndepărtate ale Statelor Unite ale Americii"}
        US{"Statele Unite ale Americii"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Vatican"}
        VC{"Sfântul Vincent și Grenadine"}
        VE{"Venezuela"}
        VG{"Insulele Virgine Britanice"}
        VI{"Insulele Virgine S.U.A."}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis și Futuna"}
        WS{"Samoa"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Africa de Sud"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Regiune necunoscută sau nevalidă"}
    }
    Version{"2.0.48.46"}
}
