﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mua.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/mua.xml
 */
mua{
    Countries{
        AD{"andorra"}
        AE{"Sǝr Arabiya ma taini"}
        AF{"afghanistaŋ"}
        AG{"antiguan ne Barbuda"}
        AI{"anguiya"}
        AL{"albaniya"}
        AM{"armeniya"}
        AN{"Sǝr ma kasǝŋ ma laŋne"}
        AO{"angola"}
        AR{"argentiniya"}
        AS{"samoa Amerika"}
        AT{"austriya"}
        AU{"australiya"}
        AW{"aruba"}
        AZ{"azerbaijaŋ"}
        BA{"bosniya ne Herzegovina"}
        BB{"barbadiya"}
        BD{"bangladeshiya"}
        BE{"belgika"}
        BF{"burkina Faso"}
        BG{"bulgariya"}
        BH{"bahraiŋ"}
        BI{"burundi"}
        BJ{"beniŋ"}
        BM{"bermudiya"}
        BN{"bruniya"}
        BO{"boliviya"}
        BR{"brazilya"}
        BS{"bahamas"}
        BT{"butaŋ"}
        BW{"botswana"}
        BY{"belarussiya"}
        BZ{"beliziya"}
        CA{"kanada"}
        CD{"Sǝr Kongo ma dii ne zair"}
        CF{"centrafrika"}
        CG{"kongo"}
        CH{"Sǝr Swiss"}
        CI{"ser Ivoiriya"}
        CK{"kook ma laŋne"}
        CL{"syili"}
        CM{"kameruŋ"}
        CN{"syiŋ"}
        CO{"kolombiya"}
        CR{"kosta Rika"}
        CU{"Kuba"}
        CV{"kap ma laŋne"}
        CY{"Syipriya"}
        CZ{"Sǝr Syek"}
        DE{"Germaniya"}
        DJ{"Djibouti"}
        DK{"Daŋmark"}
        DM{"Dominik"}
        DO{"Sǝr Dominik ma lii"}
        DZ{"algeriya"}
        EC{"Ekwatǝr"}
        EE{"Estoniya"}
        EG{"Sǝr Egypt"}
        ER{"Sǝr Eritre"}
        ES{"Espaŋiya"}
        ET{"Etiopia"}
        FI{"Sǝr Finland"}
        FJ{"Sǝr Fiji"}
        FK{"Sǝr malouniya ma laŋne"}
        FM{"Micronesiya"}
        FR{"Franssǝ"}
        GA{"Gaboŋ"}
        GB{"Sǝr Anglofoŋ"}
        GD{"Grenadǝ"}
        GE{"Georgiya"}
        GF{"Sǝr Guyana ma Franssǝ"}
        GH{"Gana"}
        GI{"Sǝr Gibraltar"}
        GL{"Sǝr Groenland"}
        GM{"Gambiya"}
        GN{"Guine"}
        GP{"Sǝr Gwadeloupǝ"}
        GQ{"Sǝr Guine"}
        GR{"Sǝr Grek"}
        GT{"Gwatemala"}
        GU{"Gwam"}
        GW{"Guine ma Bissao"}
        GY{"Guyana"}
        HN{"Sǝr Honduras"}
        HR{"kroatiya"}
        HT{"Sǝr Haiti"}
        HU{"Hungriya"}
        ID{"Indonesiya"}
        IE{"Sǝr Ireland"}
        IL{"Sǝr Israel"}
        IN{"Sǝr Indǝ"}
        IO{"anglofoŋ ma Indiya"}
        IQ{"Irak"}
        IR{"Iraŋ"}
        IS{"Sǝr Island"}
        IT{"Italiya"}
        JM{"Jamaika"}
        JO{"Jordaniya"}
        JP{"Japaŋ"}
        KE{"Sǝr Kenya"}
        KG{"Kirgizstaŋ"}
        KH{"kambodiya"}
        KI{"Sǝr Kiribati"}
        KM{"komora"}
        KN{"Sǝr Kristof ne Nievǝ"}
        KP{"Sǝr Kore fah sǝŋ"}
        KR{"Sǝr Kore nekǝsǝŋ"}
        KW{"Sǝr Kowait"}
        KY{"kayman ma laŋne"}
        KZ{"Kazakstaŋ"}
        LA{"Sǝr Laos"}
        LB{"Libaŋ"}
        LC{"Sǝr Lucia"}
        LI{"Lichtǝnsteiŋ"}
        LK{"Sǝr Lanka"}
        LR{"Liberiya"}
        LS{"Sǝr Lesotho"}
        LT{"Lituaniya"}
        LU{"Sǝr Luxemburg"}
        LV{"Letoniya"}
        LY{"Libiya"}
        MA{"Marok"}
        MC{"Monako"}
        MD{"Moldoviya"}
        MG{"Madagaskar"}
        MH{"Sǝr Marshall ma laŋne"}
        MK{"Macedoniya"}
        ML{"Sǝr Mali"}
        MM{"Sǝr Myanmar"}
        MN{"Mongoliya"}
        MP{"Sǝr Maria ma laŋne"}
        MQ{"Martinika"}
        MR{"Mauritaniya"}
        MS{"Sǝr Montserrat"}
        MT{"Sǝr Malta"}
        MU{"Sǝr Mauricǝ"}
        MV{"Maldivǝ"}
        MW{"Sǝr Malawi"}
        MX{"Mexiko"}
        MY{"Malaysiya"}
        MZ{"Mozambika"}
        NA{"Namibiya"}
        NC{"Kaledoniya mafuu"}
        NE{"Sǝr Niger"}
        NF{"Norfolk ma laŋne"}
        NG{"Nigeriya"}
        NI{"Nikaragwa"}
        NL{"Sǝr ma kasǝŋ"}
        NO{"Norvegǝ"}
        NP{"Sǝr Nepal"}
        NR{"Sǝr Nauru"}
        NU{"Niwe"}
        NZ{"Zeland mafuu"}
        OM{"Omaŋ"}
        PA{"Sǝr Panama"}
        PE{"Peru"}
        PF{"Sǝr Polynesiya ma Franssǝ"}
        PG{"Papuasiya Guine mafuu"}
        PH{"Filipiŋ"}
        PK{"Pakistaŋ"}
        PL{"Pologŋ"}
        PM{"Sǝr Pǝtar ne Mikǝlon"}
        PN{"Pitkairn"}
        PR{"Porto Riko"}
        PS{"Sǝr Palestiniya"}
        PT{"Sǝr Portugal"}
        PW{"Sǝr Palau"}
        PY{"Paragwai"}
        QA{"Katar"}
        RE{"Sǝr Reunion"}
        RO{"Romaniya"}
        RU{"Russiya"}
        RW{"Rwanda"}
        SA{"Sǝr Arabiya"}
        SB{"Sǝr Salomon ma laŋne"}
        SC{"Saichel"}
        SD{"Sudaŋ"}
        SE{"Sǝr Sued"}
        SG{"Singapur"}
        SH{"Sǝr Helena"}
        SI{"Sloveniya"}
        SK{"Slovakiya"}
        SL{"Sierra Leonǝ"}
        SM{"Sǝr Marino"}
        SN{"Senegal"}
        SO{"Somaliya"}
        SR{"Sǝr Surinam"}
        ST{"Sao Tome ne Principe"}
        SV{"Sǝr Salvador"}
        SY{"Syria"}
        SZ{"Sǝr Swaziland"}
        TC{"Turkiya ne kaicos ma laŋne"}
        TD{"syad"}
        TG{"Sǝr Togo"}
        TH{"Tailand"}
        TJ{"Tajikistaŋ"}
        TK{"Sǝr Tokelau"}
        TL{"Timoriya"}
        TM{"Turkmenistaŋ"}
        TN{"Tunisiya"}
        TO{"Sǝr Tonga"}
        TR{"Turkiya"}
        TT{"Trinite ne Tobago"}
        TV{"Sǝr Tuvalu"}
        TW{"Taiwaŋ"}
        TZ{"Tanzaniya"}
        UA{"Ukraiŋ"}
        UG{"Uganda"}
        US{"Amerika"}
        UY{"Urugwai"}
        UZ{"Uzbekistaŋ"}
        VA{"Vaticaŋ"}
        VC{"Sǝr Vinceŋ ne Grenadiŋ"}
        VE{"Sǝr Venezuela"}
        VG{"ser Anglofon ma laŋne"}
        VI{"Sǝr amerika ma laŋne"}
        VN{"Sǝr Vietnam"}
        VU{"Sǝr Vanuatu"}
        WF{"Wallis ne Futuna"}
        WS{"Sǝr Samoa"}
        YE{"Yemeŋ"}
        YT{"Mayot"}
        ZA{"Afrika nekǝsǝŋ"}
        ZM{"Zambiya"}
        ZW{"Zimbabwe"}
    }
    Version{"2.1.7.39"}
}
