﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/nyn.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/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.0.82.45"}
}
