﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/it.xml
// *
// ***************************************************************************
it{
    Countries{
        001{"Mondo"}
        002{"Africa"}
        003{"Nord America"}
        005{"America del Sud"}
        009{"Oceania"}
        011{"Africa occidentale"}
        013{"America Centrale"}
        014{"Africa orientale"}
        015{"Africa del Nord"}
        017{"Africa centrale"}
        018{"Africa del Sud"}
        019{"Americhe"}
        021{"America del Nord"}
        029{"Caraibi"}
        030{"Asia orientale"}
        034{"Asia del Sud"}
        035{"Sud-est asiatico"}
        039{"Europa meridionale"}
        053{"Australasia"}
        054{"Melanesia"}
        057{"Regione Micronesiana"}
        061{"Polinesia"}
        142{"Asia"}
        143{"Asia centrale"}
        145{"Asia occidentale"}
        150{"Europa"}
        151{"Europa orientale"}
        154{"Europa settentrionale"}
        155{"Europa occidentale"}
        419{"America Latina"}
        AC{"Isola di Ascensione"}
        AD{"Andorra"}
        AE{"Emirati Arabi Uniti"}
        AF{"Afghanistan"}
        AG{"Antigua e Barbuda"}
        AI{"Anguilla"}
        AL{"Albania"}
        AM{"Armenia"}
        AN{"Antille Olandesi"}
        AO{"Angola"}
        AQ{"Antartide"}
        AR{"Argentina"}
        AS{"Samoa Americane"}
        AT{"Austria"}
        AU{"Australia"}
        AW{"Aruba"}
        AX{"Isole Aland"}
        AZ{"Azerbaigian"}
        BA{"Bosnia-Erzegovina"}
        BB{"Barbados"}
        BD{"Bangladesh"}
        BE{"Belgio"}
        BF{"Burkina Faso"}
        BG{"Bulgaria"}
        BH{"Bahrein"}
        BI{"Burundi"}
        BJ{"Benin"}
        BL{"Saint-Barthélemy"}
        BM{"Bermuda"}
        BN{"Brunei"}
        BO{"Bolivia"}
        BQ{"Caraibi Olandesi"}
        BR{"Brasile"}
        BS{"Bahamas"}
        BT{"Bhutan"}
        BV{"Isola Bouvet"}
        BW{"Botswana"}
        BY{"Bielorussia"}
        BZ{"Belize"}
        CA{"Canada"}
        CC{"Isole Cocos"}
        CD{"Congo - Kinshasa"}
        CF{"Repubblica Centrafricana"}
        CG{"Congo-Brazzaville"}
        CH{"Svizzera"}
        CI{"Costa d’Avorio"}
        CK{"Isole Cook"}
        CL{"Cile"}
        CM{"Camerun"}
        CN{"Cina"}
        CO{"Colombia"}
        CP{"Isola di Clipperton"}
        CR{"Costa Rica"}
        CU{"Cuba"}
        CV{"Capo Verde"}
        CW{"Curaçao"}
        CX{"Isola di Christmas"}
        CY{"Cipro"}
        CZ{"Repubblica Ceca"}
        DE{"Germania"}
        DG{"Diego Garcia"}
        DJ{"Gibuti"}
        DK{"Danimarca"}
        DM{"Dominica"}
        DO{"Repubblica Dominicana"}
        DZ{"Algeria"}
        EA{"Ceuta e Melilla"}
        EC{"Ecuador"}
        EE{"Estonia"}
        EG{"Egitto"}
        EH{"Sahara Occidentale"}
        ER{"Eritrea"}
        ES{"Spagna"}
        ET{"Etiopia"}
        EU{"Unione Europea"}
        FI{"Finlandia"}
        FJ{"Figi"}
        FK{"Isole Falkland"}
        FM{"Micronesia"}
        FO{"Isole Faroe"}
        FR{"Francia"}
        GA{"Gabon"}
        GB{"Regno Unito"}
        GD{"Grenada"}
        GE{"Georgia"}
        GF{"Guiana Francese"}
        GG{"Guernsey"}
        GH{"Ghana"}
        GI{"Gibilterra"}
        GL{"Groenlandia"}
        GM{"Gambia"}
        GN{"Guinea"}
        GP{"Guadalupa"}
        GQ{"Guinea Equatoriale"}
        GR{"Grecia"}
        GS{"Georgia del Sud e isole Sandwich meridionali"}
        GT{"Guatemala"}
        GU{"Guam"}
        GW{"Guinea-Bissau"}
        GY{"Guyana"}
        HK{"RAS di Hong Kong"}
        HM{"Isole Heard e McDonald"}
        HN{"Honduras"}
        HR{"Croazia"}
        HT{"Haiti"}
        HU{"Ungheria"}
        IC{"Isole Canarie"}
        ID{"Indonesia"}
        IE{"Irlanda"}
        IL{"Israele"}
        IM{"Isola di Man"}
        IN{"India"}
        IO{"Territorio Britannico dell’Oceano Indiano"}
        IQ{"Iraq"}
        IR{"Iran"}
        IS{"Islanda"}
        IT{"Italia"}
        JE{"Jersey"}
        JM{"Giamaica"}
        JO{"Giordania"}
        JP{"Giappone"}
        KE{"Kenya"}
        KG{"Kirghizistan"}
        KH{"Cambogia"}
        KI{"Kiribati"}
        KM{"Comore"}
        KN{"Saint Kitts e Nevis"}
        KP{"Corea del Nord"}
        KR{"Corea del Sud"}
        KW{"Kuwait"}
        KY{"Isole Cayman"}
        KZ{"Kazakistan"}
        LA{"Laos"}
        LB{"Libano"}
        LC{"Saint Lucia"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberia"}
        LS{"Lesotho"}
        LT{"Lituania"}
        LU{"Lussemburgo"}
        LV{"Lettonia"}
        LY{"Libia"}
        MA{"Marocco"}
        MC{"Monaco"}
        MD{"Moldavia"}
        ME{"Montenegro"}
        MF{"Saint Martin"}
        MG{"Madagascar"}
        MH{"Isole Marshall"}
        MK{"Repubblica di Macedonia"}
        ML{"Mali"}
        MM{"Myanmar (Birmania)"}
        MN{"Mongolia"}
        MO{"RAS di Macao"}
        MP{"Isole Marianne Settentrionali"}
        MQ{"Martinica"}
        MR{"Mauritania"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mauritius"}
        MV{"Maldive"}
        MW{"Malawi"}
        MX{"Messico"}
        MY{"Malesia"}
        MZ{"Mozambico"}
        NA{"Namibia"}
        NC{"Nuova Caledonia"}
        NE{"Niger"}
        NF{"Isola Norfolk"}
        NG{"Nigeria"}
        NI{"Nicaragua"}
        NL{"Paesi Bassi"}
        NO{"Norvegia"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Nuova Zelanda"}
        OM{"Oman"}
        PA{"Panamá"}
        PE{"Perù"}
        PF{"Polinesia Francese"}
        PG{"Papua Nuova Guinea"}
        PH{"Filippine"}
        PK{"Pakistan"}
        PL{"Polonia"}
        PM{"Saint Pierre e Miquelon"}
        PN{"Isole Pitcairn"}
        PR{"Portorico"}
        PS{"Territori palestinesi"}
        PT{"Portogallo"}
        PW{"Palau"}
        PY{"Paraguay"}
        QA{"Qatar"}
        QO{"Oceania lontana"}
        RE{"Réunion"}
        RO{"Romania"}
        RS{"Serbia"}
        RU{"Federazione Russa"}
        RW{"Ruanda"}
        SA{"Arabia Saudita"}
        SB{"Isole Solomon"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Svezia"}
        SG{"Singapore"}
        SH{"Sant’Elena"}
        SI{"Slovenia"}
        SJ{"Svalbard e Jan Mayen"}
        SK{"Slovacchia"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalia"}
        SR{"Suriname"}
        SS{"Sudan del Sud"}
        ST{"São Tomé e Príncipe"}
        SV{"El Salvador"}
        SX{"Sint Maarten"}
        SY{"Siria"}
        SZ{"Swaziland"}
        TA{"Tristan da Cunha"}
        TC{"Isole Turks e Caicos"}
        TD{"Ciad"}
        TF{"Territori australi francesi"}
        TG{"Togo"}
        TH{"Tailandia"}
        TJ{"Tagikistan"}
        TK{"Tokelau"}
        TL{"Timor Est"}
        TM{"Turkmenistan"}
        TN{"Tunisia"}
        TO{"Tonga"}
        TR{"Turchia"}
        TT{"Trinidad e Tobago"}
        TV{"Tuvalu"}
        TW{"Taiwan"}
        TZ{"Tanzania"}
        UA{"Ucraina"}
        UG{"Uganda"}
        UM{"Isole minori lontane dagli USA"}
        US{"Stati Uniti"}
        UY{"Uruguay"}
        UZ{"Uzbekistan"}
        VA{"Città del Vaticano"}
        VC{"Saint Vincent e Grenadines"}
        VE{"Venezuela"}
        VG{"Isole Vergini Britanniche"}
        VI{"Isole Vergini Americane"}
        VN{"Vietnam"}
        VU{"Vanuatu"}
        WF{"Wallis e Futuna"}
        WS{"Samoa"}
        XK{"Kosovo"}
        YE{"Yemen"}
        YT{"Mayotte"}
        ZA{"Sudafrica"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
        ZZ{"Regione non valida o sconosciuta"}
    }
    Countries%short{
        GB{"GB"}
        HK{"Hong-Kong"}
        MO{"Macao"}
        PS{"Palestina"}
        US{"USA"}
    }
    Countries%variant{
        CD{"Congo (RDC)"}
        CG{"Congo (repubblica)"}
        FK{"Isole Falkland (isole Malvine)"}
        MK{"Repubblica ex Jugoslava di Macedonia"}
    }
    Version{"2.1.13.6"}
}
