﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/nyn.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/nyn.xml
 */
nyn{
    Currencies{
        AED{
            "AED",
            "Dirham za Buharabu",
        }
        AOA{
            "Kz",
            "Kwanza ya Angora",
        }
        AUD{
            "AU$",
            "Doora ya Austureeriya",
        }
        BHD{
            "BD",
            "Dinari ya Bahareni",
        }
        BIF{
            "FBu",
            "Faranga ya Burundi",
        }
        BWP{
            "BWP",
            "Pura ya Botswana",
        }
        CAD{
            "CA$",
            "Doora ya Kanada",
        }
        CDF{
            "CDF",
            "Faranga ya Kongo",
        }
        CHF{
            "CHF",
            "Faranga ya Swisi",
        }
        CNY{
            "CN¥",
            "Yuan Renminbi ya China",
        }
        CVE{
            "CV$",
            "Eskudo ya Kepuvede",
        }
        DJF{
            "Fdj",
            "Faranga ya Gyibuti",
        }
        DZD{
            "DA",
            "Dinari ya Arigyeriya",
        }
        EGP{
            "EGP",
            "Paundi ya Misiri",
        }
        ERN{
            "Nfk",
            "Nakfa ya Eritireya",
        }
        ETB{
            "Br",
            "Birr ya Ethiopiya",
        }
        EUR{
            "€",
            "Yuro",
        }
        GBP{
            "£",
            "Paundi ya Bungyereza",
        }
        GHC{
            "₵",
            "Cedi ya Ghana",
        }
        GMD{
            "GMD",
            "Dalasi ya Gambia",
        }
        GNS{
            "GNS" /** ===  */,
            "Faranga ya Guinea",
        }
        INR{
            "Rs",
            "Rupiya ya India",
        }
        JPY{
            "JP¥",
            "Yeni ya Japaani",
        }
        KES{
            "Ksh",
            "Shiringi ya Kenya",
        }
        KMF{
            "CF",
            "Faranga ya Komoro",
        }
        LRD{
            "L$",
            "Doora ya Liberia",
        }
        LSL{
            "LSL",
            "Loti ya Lesoto",
        }
        LYD{
            "LD",
            "Dinari ya Libya",
        }
        MAD{
            "MAD",
            "Dirram ya Moroko",
        }
        MGA{
            "MGA",
            "Ariari ya Maragariita",
        }
        MRO{
            "UM",
            "Ougwiya ya Mouriteeniya",
        }
        MUR{
            "MURs",
            "Rupiiha ya Mauritiasi",
        }
        MWK{
            "MWK",
            "Kwaca ya Malawi",
        }
        MZM{
            "Mt",
            "Metikari ya Mozambikwi",
        }
        NAD{
            "N$",
            "Doora ya Namibiya",
        }
        NGN{
            "₦",
            "Naira ya Naigyeriya",
        }
        RWF{
            "RWF",
            "Faranga ya Rwanda",
        }
        SAR{
            "SR",
            "Riya ya Saudi",
        }
        SCR{
            "SRe",
            "Rupiiha ya Sherisheri",
        }
        SDG{
            "SDG",
            "Dinari ya Sudani",
        }
        SDP{
            "SDP" /** ===  */,
            "Paundi ya Sudan",
        }
        SHP{
            "SH£",
            "Paundi ya Senti Herena",
        }
        SLL{
            "Le",
            "Leone",
        }
        SOS{
            "Ssh",
            "Eshiringi ya Somalia",
        }
        STD{
            "Db",
            "Dobra ya Sao Tome na Purinsipo",
        }
        SZL{
            "SZL",
            "Lilangeni",
        }
        TND{
            "DT",
            "Dinari ya Tunisia",
        }
        TZS{
            "TSh",
            "Eshiringi ya Tanzania",
        }
        UGX{
            "USh",
            "Eshiringi ya Uganda",
        }
        USD{
            "US$",
            "Doora ya America",
        }
        XAF{
            "FCFA",
            "Faranga ya CFA BEAC",
        }
        XOF{
            "CFA",
            "Faranga ya CFA BCEAO",
        }
        ZAR{
            "R",
            "Randi ya Sausi Afirika",
        }
        ZMK{
            "ZK",
            "Kwacha ya Zambia",
        }
        ZWD{
            "Z$",
            "Doora ya Zimbabwe",
        }
    }
    Version{"2.0.47.63"}
}
