﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/mer.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/mer.xml
 */
mer{
    Currencies{
        AED{
            "AED",
            "Dirham ya Falme cia Kiarabu",
        }
        AOA{
            "AOA",
            "Kwanza ya Angola",
        }
        AUD{
            "A$",
            "Dola ya Austrĩlia",
        }
        BHD{
            "BHD",
            "Dinari ya Baharini",
        }
        BIF{
            "BIF",
            "Faranga ya Burundi",
        }
        BWP{
            "BWP",
            "Pula ya Botswana",
        }
        CAD{
            "CA$",
            "Dola ya Kanada",
        }
        CDF{
            "CDF",
            "Faranga ya Kongo",
        }
        CHF{
            "CHF",
            "Faranga ya Swisilandi",
        }
        CNY{
            "CN¥",
            "Yuan Renminbi ya China",
        }
        CVE{
            "CVE",
            "Eskudo ya Kepuvede",
        }
        DJF{
            "DJF",
            "Faranga ya Jibuti",
        }
        DZD{
            "DZD",
            "Dinari ya Anjĩria",
        }
        EGP{
            "EGP",
            "Paũndi ya Misri",
        }
        ERN{
            "ERN",
            "Nakfa ya Eritrea",
        }
        ETB{
            "ETB",
            "Bĩrũ ya Ithiopia",
        }
        EUR{
            "€",
            "Yuro",
        }
        GBP{
            "£",
            "Paũndi ya Ngeretha",
        }
        GHC{
            "GHC",
            "Sedi ya Ghana",
        }
        GMD{
            "GMD",
            "Dalasi ya Gambia",
        }
        GNS{
            "GNS",
            "Faranga ya Gine",
        }
        INR{
            "₹",
            "Rupia ya India",
        }
        JPY{
            "JP¥",
            "Sarafu ya japani",
        }
        KES{
            "Ksh",
            "Shilingi ya Kenya",
        }
        KMF{
            "KMF",
            "Faranga ya Komoro",
        }
        LRD{
            "LRD",
            "Dola ya Liberia",
        }
        LSL{
            "LSL",
            "Loti ya Lesoto",
        }
        LYD{
            "LYD",
            "Dinari ya Libya",
        }
        MAD{
            "MAD",
            "Dirham ya Moroko",
        }
        MGA{
            "MGA",
            "Ariarĩ ya Bukini",
        }
        MRO{
            "MRO",
            "Ugwiya ya Mauritania",
        }
        MUR{
            "MUR",
            "Rupia ya Maurĩtiasi",
        }
        MWK{
            "MWK",
            "Kwacha ya Malawi",
        }
        MZM{
            "MZM",
            "Metikali ya Mozambĩkĩ",
        }
        NAD{
            "NAD",
            "Dola ya Namibia",
        }
        NGN{
            "NGN",
            "Naira ya Nijeria",
        }
        RWF{
            "RWF",
            "Faranga ya Rwanda",
        }
        SAR{
            "SAR",
            "Riyal ya Saudi Arĩbia",
        }
        SCR{
            "SCR",
            "Rupia ya Shelisheli",
        }
        SDG{
            "SDG",
            "Paũndi ya Sudani",
        }
        SHP{
            "SHP",
            "Paũndi ya Santahelena",
        }
        SLL{
            "SLL",
            "Leoni",
        }
        SOS{
            "SOS",
            "Shilingi ya Somalia",
        }
        STD{
            "STD",
            "Dobra ya Sao Tome na Principe",
        }
        SZL{
            "SZL",
            "Lilangeni",
        }
        TND{
            "TND",
            "Dinari ya Tunisia",
        }
        TZS{
            "TZS",
            "Shilingi ya Tanzania",
        }
        UGX{
            "UGX",
            "Shilingi ya Uganda",
        }
        USD{
            "US$",
            "Dola ya Amerika",
        }
        XAF{
            "FCFA",
            "Faranga CFA BEAC",
        }
        XOF{
            "CFA",
            "Faranga CFA BCEAO",
        }
        ZAR{
            "ZAR",
            "Randi ya Afrika ya Sauthi",
        }
        ZMK{
            "ZMK",
            "Kwacha ya Zambia (1968-2012)",
        }
        ZMW{
            "ZMW",
            "Kwacha ya Zambia",
        }
        ZWD{
            "ZWD",
            "Dola ya Zimbabwe",
        }
    }
    Version{"2.0.82.45"}
}
