﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/rm.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/rm.xml
 */
rm{
    Countries{
        001{"mund"}
        002{"Africa"}
        003{"America dal Nord"}
        005{"America dal Sid"}
        009{"Oceania"}
        011{"Africa dal Vest"}
        013{"America Centrala"}
        014{"Africa da l'Ost"}
        015{"Africa dal Nord"}
        017{"Africa Centrala"}
        018{"Africa Meridiunala"}
        019{"America dal Nord, America Centrala ed America dal Sid"}
        029{"Caribica"}
        030{"Asia da l'Ost"}
        034{"Asia dal Sid"}
        035{"Asia dal Sidost"}
        039{"Europa dal Sid"}
        053{"Australia e Nova Zelanda"}
        054{"Melanesia"}
        057{"Regiun Micronesica"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia Centrala"}
        145{"Asia dal Vest"}
        150{"Europa"}
        151{"Europa Orientala"}
        154{"Europa dal Nord"}
        155{"Europa dal Vest"}
        419{"America Latina"}
        AD{"Andorra"}
        AE{"Emirats Arabs Unids"}
        AF{"Afghanistan"}
        AG{"Antigua e Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antillas Ollandaisas"}
        AO{"Angola"}
        AQ{"Antarctica"}
        AR{"Argentinia"}
        AS{"Samoa Americana"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Inslas Aland"}
        AZ{"Aserbaidschan"}
        BA{"Bosnia ed Erzegovina"}
        BB{"Barbados"}
        BD{"Bangladesch"}
        BE{"Belgia"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrain"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Son Barthélemy"}
        BM{"Bermudas"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BR{"Brasila"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Insla Bouvet"}
        BW{"Botswana"}
        BY{"Bielorussia"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Inslas Cocos"}
        CD{"Republica Democratica dal Congo"}
        CF{"Republica Centralafricana"}
        CG{"Congo"}
        CH{"Svizra"}
        CI{"Costa d'Ivur"}
        CK{"Inslas Cook"}
        CL{"Chile"}
        CM{"Camerun"}
        CN{"China"}
        CO{"Columbia"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Cap Verd"}
        CX{"Insla da Christmas"}
        CY{"Cipra"}
        CZ{"Republica Tscheca"}
        DE{"Germania"}
        DJ{"Dschibuti"}
        DK{"Danemarc"}
        DM{"Dominica"}
        DO{"Republica Dominicana"}
        DZ{"Algeria"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Egipta"}
        EH{"Sahara Occidentala"}
        ER{"Eritrea"}
        ES{"Spagna"}
        ET{"Etiopia"}
        EU{"Uniun europeica"}
        FI{"Finlanda"}
        FJ{"Fidschi"}
        FK{"Inslas dal Falkland"}
        FM{"Micronesia"}
        FO{"Inslas Feroe"}
        FR{"Frantscha"}
        GA{"Gabun"}
        GB{"Reginavel Unì"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guyana Franzosa"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibraltar"}
        GL{"Grönlanda"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadeloupe"}
        GQ{"Guinea Equatoriala"}
        GR{"Grezia"}
        GS{"Georgia dal Sid e las Inslas Sandwich dal Sid"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"Regiun d'administraziun speziala da Hongkong, China"}
        HM{"Inslas da Heard e da McDonlad"}
        HN{"Honduras"}
        HR{"Croazia"}
        HT{"Haiti"}
        HU{"Ungaria"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israel"}
        IM{"Insla da Man"}
        IN{"India"}
        IO{"Territori Britannic en l'Ocean Indic"}
        IQ{"Irac"}
        IR{"Iran"}
        IS{"Islanda"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Giamaica"}
        JO{"Jordania"}
        JP{"Giapun"}
        KE{"Kenia"}
        KG{"Kirghisistan"}
        KH{"Cambodscha"}
        KI{"Kiribati"}
        KM{"Comoras"}
        KN{"Saint Kitts e Nevis"}
        KP{"Corea dal Nord"}
        KR{"Corea dal Sid"}
        KW{"Kuwait"}
        KY{"Inslas Cayman"}
        KZ{"Kasachstan"}
        LA{"Laos"}
        LB{"Libanon"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Luxemburg"}
        LV{"Lettonia"}
        LY{"Libia"}
        MA{"Maroc"}
        MC{"Monaco"}
        MD{"Moldavia"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagascar"}
        MH{"Inslas da Marshall"}
        MK{"Macedonia"}
        ML{"Mali"}
        MM{"Myanmar"}
        MN{"Mongolia"}
        MO{"Regiun d'administraziun speziala Macao, China"}
        MP{"Inslas Mariannas dal Nord"}
        MQ{"Martinique"}
        MR{"Mauretania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldivas"}
        MW{"Malawi"}
        MX{"Mexico"}
        MY{"Malaisia"}
        MZ{"Mosambic"}
        NA{"Namibia"}
        NC{"Nova Caledonia"}
        NE{"Niger"}
        NF{"Insla Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Pajais Bass"}
        NO{"Norvegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nova Zelanda"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesia Franzosa"}
        PG{"Papua Nova Guinea"}
        PH{"Filippinas"}
        PK{"Pakistan"}
        PL{"Pologna"}
        PM{"Saint Pierre e Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Territori Palestinais"}
        PT{"Portugal"}
        PW{"Palau"}
        PY{"Paraguai"}
        QA{"Katar"}
        QO{"Oceania Periferica"}
        RE{"Réunion"}
        RO{"Rumenia"}
        RS{"Serbia"}
        RU{"Russia"}
        RW{"Ruanda"}
        SA{"Arabia Saudita"}
        SB{"Salomonas"}
        SC{"Seychellas"}
        SD{"Sudan"}
        SE{"Svezia"}
        SG{"Singapur"}
        SH{"Sontg'Elena"}
        SI{"Slovenia"}
        SJ{"Svalbard e Jan Mayen"}
        SK{"Slovachia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Surinam"}
        ST{"São Tomé e Principe"}
        SV{"El Salvador"}
        SY{"Siria"}
        SZ{"Swaziland"}
        TC{"Inslas Turks e Caicos"}
        TD{"Tschad"}
        TF{"Territoris Franzos Meridiunals"}
        TG{"Togo"}
        TH{"Tailanda"}
        TJ{"Tadschikistan"}
        TK{"Tokelau"}
        TL{"Timor da l'Ost"}
        TM{"Turkmenistan"}
        TN{"Tunesia"}
        TO{"Tonga"}
        TR{"Tirchia"}
        TT{"Trinidad e Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tansania"}
        UA{"Ucraina"}
        UG{"Uganda"}
        UM{"Inslas pitschnas perifericas dals Stadis Unids da l'America"}
        US{"Stadis Unids da l'America"}
        UY{"Uruguay"}
        UZ{"Usbekistan"}
        VA{"Citad dal Vatican"}
        VC{"Saint Vincent e las Grenadinas"}
        VE{"Venezuela"}
        VG{"Inslas Verginas Britannicas"}
        VI{"Inslas Verginas Americanas"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis e Futuna"}
        WS{"Samoa"}
        YE{"Jemen"}
        YT{"Mayotte"}
        ZA{"Africa dal Sid"}
        ZM{"Sambia"}
        ZW{"Simbabwe"}
        ZZ{"Regiun betg encouschenta u nunvalaivla"}
    }
    Version{"2.0.82.45"}
}
