﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/nyn.xml
// *
// ***************************************************************************
nyn{
    Countries{
        AD{"Andora"}
        AE{"Amahanga ga Buharabu ageeteereine"}
        AF{"Afuganistani"}
        AG{"Angiguwa na Babuda"}
        AI{"Angwira"}
        AL{"Arubania"}
        AM{"Arimeniya"}
        AN{"Antiri za Hoorandi"}
        AO{"Angora"}
        AR{"Arigentina"}
        AS{"Samowa ya Ameerika"}
        AT{"Osituria"}
        AU{"Ositureeriya"}
        AW{"Aruba"}
        AZ{"Azabagyani"}
        BA{"Boziniya na Hezegovina"}
        BB{"Babadosi"}
        BD{"Bangaradeshi"}
        BE{"Bubirigi"}
        BF{"Bokina Faso"}
        BG{"Burugariya"}
        BH{"Bahareni"}
        BI{"Burundi"}
        BJ{"Benini"}
        BM{"Berimuda"}
        BN{"Burunei"}
        BO{"Boriiviya"}
        BR{"Buraziiri"}
        BS{"Bahama"}
        BT{"Butani"}
        BW{"Botswana"}
        BY{"Bararusi"}
        BZ{"Berize"}
        CA{"Kanada"}
        CD{"Demokoratika Ripaaburika ya Kongo"}
        CF{"Eihanga rya Rwagati ya Afirika"}
        CG{"Kongo"}
        CH{"Swisi"}
        CI{"Aivore Kositi"}
        CK{"Ebizinga bya Kuuku"}
        CL{"Chile"}
        CM{"Kameruuni"}
        CN{"China"}
        CO{"Korombiya"}
        CR{"Kositarika"}
        CU{"Cuba"}
        CV{"Ebizinga bya Kepuvade"}
        CY{"Saipurasi"}
        CZ{"Ripaaburika ya Zeeki"}
        DE{"Bugirimaani"}
        DJ{"Gyibuti"}
        DK{"Deenimaaka"}
        DM{"Dominika"}
        DO{"Ripaaburika ya Dominica"}
        DZ{"Arigyeriya"}
        EC{"Ikweda"}
        EE{"Esitoniya"}
        EG{"Misiri"}
        ER{"Eriteriya"}
        ES{"Sipeyini"}
        ET{"Ethiyopiya"}
        FI{"Bufini"}
        FJ{"Figyi"}
        FK{"Ebizinga bya Faakilanda"}
        FM{"Mikironesiya"}
        FR{"Bufaransa"}
        GA{"Gabooni"}
        GB{"Bungyereza"}
        GD{"Gurenada"}
        GE{"Gyogiya"}
        GF{"Guyana ya Bufaransa"}
        GH{"Gana"}
        GI{"Giburaata"}
        GL{"Guriinirandi"}
        GM{"Gambiya"}
        GN{"Gine"}
        GP{"Gwaderupe"}
        GQ{"Guni"}
        GR{"Guriisi"}
        GT{"Gwatemara"}
        GU{"Gwamu"}
        GW{"Ginebisau"}
        GY{"Guyana"}
        HN{"Hondurasi"}
        HR{"Korasiya"}
        HT{"Haiti"}
        HU{"Hangare"}
        ID{"Indoneeziya"}
        IE{"Irerandi"}
        IL{"Isirairi"}
        IN{"Indiya"}
        IO{"Ebizinga bya Indian ebya Bungyereza"}
        IQ{"Iraaka"}
        IR{"Iraani"}
        IS{"Aisilandi"}
        IT{"Itare"}
        JM{"Gyamaika"}
        JO{"Yorudaani"}
        JP{"Gyapaani"}
        KE{"Kenya"}
        KG{"Kirigizistani"}
        KH{"Kambodiya"}
        KI{"Kiribati"}
        KM{"Koromo"}
        KN{"Senti Kittis na Nevisi"}
        KP{"Koreya Amatemba"}
        KR{"Koreya Amashuuma"}
        KW{"Kuweiti"}
        KY{"Ebizinga bya Kayimani"}
        KZ{"Kazakisitani"}
        LA{"Layosi"}
        LB{"Lebanoni"}
        LC{"Senti Rusiya"}
        LI{"Lishenteni"}
        LK{"Siriranka"}
        LR{"Liberiya"}
        LS{"Lesotho"}
        LT{"Lithuania"}
        LU{"Lakizembaaga"}
        LV{"Latviya"}
        LY{"Libya"}
        MA{"Morocco"}
        MC{"Monaco"}
        MD{"Moridova"}
        MG{"Madagasika"}
        MH{"Ebizinga bya Marshaa"}
        MK{"Masedoonia"}
        ML{"Mari"}
        MM{"Myanamar"}
        MN{"Mongoria"}
        MP{"Ebizinga by’amatemba ga Mariana"}
        MQ{"Martinique"}
        MR{"Mauriteeniya"}
        MS{"Montserrati"}
        MT{"Marita"}
        MU{"Maurishiasi"}
        MV{"Maridives"}
        MW{"Marawi"}
        MX{"Mexico"}
        MY{"marayizia"}
        MZ{"Mozambique"}
        NA{"Namibiya"}
        NC{"Niukaredonia"}
        NE{"Naigya"}
        NF{"Ekizinga Norifoko"}
        NG{"Naigyeriya"}
        NI{"Nikaragwa"}
        NL{"Hoorandi"}
        NO{"Noorwe"}
        NP{"Nepo"}
        NR{"Nauru"}
        NU{"Niue"}
        NZ{"Niuzirandi"}
        OM{"Omaani"}
        PA{"Panama"}
        PE{"Peru"}
        PF{"Polinesia ya Bufaransa"}
        PG{"Papua"}
        PH{"Firipino"}
        PK{"Pakisitaani"}
        PL{"Poorandi"}
        PM{"Senti Piyerre na Mikweron"}
        PN{"Pitkaini"}
        PR{"Pwetoriko"}
        PS{"Parestiina na Gaza"}
        PT{"Pocugo"}
        PW{"Palaawu"}
        PY{"Paragwai"}
        QA{"Kata"}
        RE{"Riyuniyoni"}
        RO{"Romaniya"}
        RU{"Rrasha"}
        RW{"Rwanda"}
        SA{"Saudi Areebiya"}
        SB{"Ebizinga bya Surimaani"}
        SC{"Shesheresi"}
        SD{"Sudani"}
        SE{"Swideni"}
        SG{"Singapo"}
        SH{"Senti Herena"}
        SI{"Sirovaaniya"}
        SK{"Sirovaakiya"}
        SL{"Sirra Riyooni"}
        SM{"Samarino"}
        SN{"Senego"}
        SO{"Somaariya"}
        SR{"Surinaamu"}
        ST{"Sawo Tome na Purinsipo"}
        SV{"Eri Salivado"}
        SY{"Siriya"}
        SZ{"Swazirandi"}
        TC{"Ebizinga bya Buturuki na Kaiko"}
        TD{"Chadi"}
        TG{"Togo"}
        TH{"Tairandi"}
        TJ{"Tajikisitani"}
        TK{"Tokerawu"}
        TL{"Burugweizooba bwa Timori"}
        TM{"Turukimenisitani"}
        TN{"Tunizia"}
        TO{"Tonga"}
        TR{"Buturuki /Take"}
        TT{"Turinidad na Tobago"}
        TV{"Tuvaru"}
        TW{"Tayiwaani"}
        TZ{"Tanzania"}
        UA{"Ukureini"}
        UG{"Uganda"}
        US{"Amerika"}
        UY{"Urugwai"}
        UZ{"Uzibekisitani"}
        VA{"Vatikani"}
        VC{"Senti Vinsent na Gurenadini"}
        VE{"Venezuwera"}
        VG{"Ebizinga bya Virigini ebya Bungyereza"}
        VI{"Ebizinga bya Virigini ebya Amerika"}
        VN{"Viyetinaamu"}
        VU{"Vanuatu"}
        WF{"Warris na Futuna"}
        WS{"Samowa"}
        YE{"Yemeni"}
        YT{"Mayote"}
        ZA{"Sausi Afirika"}
        ZM{"Zambia"}
        ZW{"Zimbabwe"}
    }
    Version{"2.1.15.45"}
}
