﻿// ***************************************************************************
// *
// * Copyright (C) 2012 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mt.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/mt.xml
 */
mt{
    Countries{
        001{"Dinja"}
        002{"Affrika"}
        005{"Amerika t’Isfel"}
        009{"Oċejanja"}
        011{"Affrika tal-Punent"}
        013{"Amerika Ċentrali"}
        014{"Affrika tal-Lvant"}
        015{"Affrika ta’ Fuq"}
        017{"Affrika Nofsani"}
        018{"Affrika t’Isfel"}
        019{"Amerika"}
        029{"Karibew"}
        030{"Asja tal-Lvant"}
        034{"Asja t’Isfel Ċentrali"}
        035{"Asja tax-Xlokk"}
        039{"Ewropa t’Isfel"}
        053{"Awstralja u New Zealand"}
        054{"Melanesja"}
        057{"Reġjun ta’ Mikroneżja"}
        061{"Polinesja"}
        142{"Asja"}
        143{"Asja Ċentrali"}
        145{"Asja tal-Punent"}
        150{"Ewropa"}
        151{"Ewropa tal-Lvant"}
        154{"Ewropa ta’ Fuq"}
        155{"Ewropa tal-Punent"}
        419{"Amerika Latina"}
        AD{"Andorra"}
        AE{"Emirati Għarab Maqgħuda"}
        AF{"Afganistan"}
        AG{"Antigua and Barbuda"}
        AI{"Angwilla"}
        AL{"Albanija"}
        AM{"Armenja"}
        AN{"Antilles Olandiżi"}
        AO{"Angola"}
        AQ{"Antartika"}
        AR{"Arġentina"}
        AS{"Samoa Amerikana"}
        AT{"Awstrija"}
        AU{"Awstralja"}
        AW{"Aruba"}
        AX{"Gżejjer Aland"}
        AZ{"Ażerbajġan"}
        BA{"Bożnija Ħerżegovina"}
        BB{"Barbados"}
        BD{"Bangladexx"}
        BE{"Belġju"}
        BF{"Burkina Faso"}
        BG{"Bulgarija"}
        BH{"Baħrajn"}
        BI{"Burundi"}
        BJ{"Benin"}
        BM{"Bermuda"}
        BN{"Brunej"}
        BO{"Bolivja"}
        BR{"Brażil"}
        BS{"Baħamas"}
        BT{"Butan"}
        BV{"Bouvet Island"}
        BW{"Botswana"}
        BY{"Bjelorussja"}
        BZ{"Beliże"}
        CA{"Kanada"}
        CC{"Cocos (Keeling) Islands"}
        CD{"Democratic Republic of the Congo"}
        CF{"Repubblika Afrikana Ċentrali"}
        CG{"Kongo"}
        CH{"Svizzera"}
        CI{"Kosta ta’ l-Avorju"}
        CK{"Cook Islands"}
        CL{"Ċili"}
        CM{"Kamerun"}
        CN{"Ċina"}
        CO{"Kolumbja"}
        CR{"Kosta Rika"}
        CU{"Kuba"}
        CV{"Kape Verde"}
        CX{"Christmas Island"}
        CY{"Ċipru"}
        CZ{"Repubblika Ċeka"}
        DE{"Ġermanja"}
        DJ{"Ġibuti"}
        DK{"Danimarka"}
        DM{"Dominika"}
        DO{"Republikka Domenikana"}
        DZ{"Alġerija"}
        EC{"Ekwador"}
        EE{"Estonja"}
        EG{"Eġittu"}
        EH{"Sahara tal-Punent"}
        ER{"Eritreja"}
        ES{"Spanja"}
        ET{"Etijopja"}
        EU{"Unjoni Ewropea"}
        FI{"Finlandja"}
        FJ{"Fiġi"}
        FK{"Falkland Islands"}
        FM{"Mikronesja"}
        FO{"Gżejjer Faroe"}
        FR{"Franza"}
        GA{"Gabon"}
        GB{"Ingilterra"}
        GD{"Grenada"}
        GE{"Ġorġja"}
        GF{"Gujana Franċiża"}
        GH{"Gana"}
        GI{"Gibraltar"}
        GL{"Grinlandja"}
        GM{"Gambja"}
        GN{"Gineja"}
        GP{"Gwadelupe"}
        GQ{"Ginea Ekwatorjali"}
        GR{"Greċja"}
        GS{"South Georgia and the South Sandwich Islands"}
        GT{"Gwatemala"}
        GU{"Gwam"}
        GW{"Ginea-Bissaw"}
        GY{"Gujana"}
        HK{"Ħong Kong S.A.R., Ċina"}
        HM{"Heard Island and McDonald Islands"}
        HN{"Ħonduras"}
        HR{"Kroazja"}
        HT{"Ħaiti"}
        HU{"Ungerija"}
        ID{"Indoneżja"}
        IE{"Irlanda"}
        IL{"Iżrael"}
        IM{"Isle of Man"}
        IN{"Indja"}
        IO{"British Indian Ocean Territory"}
        IQ{"Iraq"}
        IR{"Iran"}
        IS{"Islanda"}
        IT{"Italja"}
        JM{"Ġamajka"}
        JO{"Ġordan"}
        JP{"Ġappun"}
        KE{"Kenja"}
        KG{"Kirgistan"}
        KH{"Kambodja"}
        KI{"Kiribati"}
        KM{"Komoros"}
        KN{"Saint Kitts and Nevis"}
        KP{"Koreja ta’ Fuq"}
        KR{"Koreja t’Isfel"}
        KW{"Kuwajt"}
        KY{"Gżejjer Kajmani"}
        KZ{"Każakstan"}
        LA{"Laos"}
        LB{"Libanu"}
        LC{"Santa Luċija"}
        LI{"Liechtenstein"}
        LK{"Sri Lanka"}
        LR{"Liberja"}
        LS{"Lesoto"}
        LT{"Litwanja"}
        LU{"Lussemburgu"}
        LV{"Latvja"}
        LY{"Libja"}
        MA{"Marokk"}
        MC{"Monako"}
        MD{"Maldova"}
        MG{"Madagaskar"}
        MH{"Gżejjer ta’ Marshall"}
        MK{"Maċedonja"}
        ML{"Mali"}
        MM{"Mjanmar"}
        MN{"Mongolja"}
        MO{"Macao S.A.R., China"}
        MP{"Gżejjer Marjana ta’ Fuq"}
        MQ{"Martinik"}
        MR{"Mawritanja"}
        MS{"Montserrat"}
        MT{"Malta"}
        MU{"Mawrizju"}
        MV{"Maldives"}
        MW{"Malawi"}
        MX{"Messiku"}
        MY{"Malasja"}
        MZ{"Możambik"}
        NA{"Namibja"}
        NC{"New Caledonia"}
        NE{"Niġer"}
        NF{"Norfolk Island"}
        NG{"Niġerja"}
        NI{"Nikaragwa"}
        NL{"Olanda"}
        NO{"Norveġja"}
        NP{"Nepal"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"New Zealand"}
        OM{"Oman"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesja Franċiża"}
        PG{"Papwa-Ginea Ġdida"}
        PH{"Filippini"}
        PK{"Pakistan"}
        PL{"Polonja"}
        PM{"Saint Pierre and Miquelon"}
        PN{"Pitcairn"}
        PR{"Puerto Rico"}
        PS{"Palestinian Territory"}
        PT{"Portugall"}
        PW{"Palau"}
        PY{"Paragwaj"}
        QA{"Qatar"}
        RE{"Réunion"}
        RO{"Rumanija"}
        RU{"Russja"}
        RW{"Rwanda"}
        SA{"Għarabja Sawdita"}
        SB{"Solomon Islands"}
        SC{"Seychelles"}
        SD{"Sudan"}
        SE{"Żvezja"}
        SG{"Singapor"}
        SH{"Saint Helena"}
        SI{"Slovenja"}
        SJ{"Svalbard and Jan Mayen"}
        SK{"Slovakkja"}
        SL{"Sierra Leone"}
        SM{"San Marino"}
        SN{"Senegal"}
        SO{"Somalja"}
        SR{"Surinam"}
        ST{"Sao Tome and Principe"}
        SV{"El Salvador"}
        SY{"Sirja"}
        SZ{"Sważiland"}
        TC{"Turks and Caicos Islands"}
        TD{"Ċad"}
        TF{"Territorji Franċiżi ta’ Nofsinhar"}
        TG{"Togo"}
        TH{"Tajlandja"}
        TJ{"Taġikistan"}
        TK{"Tokelaw"}
        TL{"Timor tal-Lvant"}
        TM{"Turkmenistan"}
        TN{"Tuneż"}
        TO{"Tonga"}
        TR{"Turkija"}
        TT{"Trinidad u Tobago"}
        TV{"Tuvalu"}
        TW{"Tajwan"}
        TZ{"Tanżanija"}
        UA{"Ukraina"}
        UG{"Uganda"}
        UM{"United States Minor Outlying Islands"}
        US{"Stati Uniti"}
        UY{"Urugwaj"}
        UZ{"Użbekistan"}
        VA{"Vatikan"}
        VC{"Saint Vincent and the Grenadines"}
        VE{"Venezwela"}
        VG{"British Virgin Islands"}
        VI{"U.S. Virgin Islands"}
        VN{"Vjetnam"}
        VU{"Vanwatu"}
        WF{"Wallis and Futuna"}
        WS{"Samoa"}
        YE{"Jemen"}
        YT{"Majotte"}
        ZA{"Afrika t’Isfel"}
        ZM{"Żambja"}
        ZW{"Żimbabwe"}
        ZZ{"Reġjun Mhux Magħruf jew Mhux Validu"}
    }
    Version{"2.0.78.38"}
}
