﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/asa.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/asa.xml
 */
asa{
    Currencies{
        AED{
            "AED",
            "dirham ya Falme dha Kiarabu",
        }
        AOA{
            "AOA",
            "kwandha ya Angola",
        }
        AUD{
            "A$",
            "dola ya Authtralia",
        }
        BHD{
            "BHD",
            "dinari ya Bahareni",
        }
        BIF{
            "BIF",
            "faranga ya Burundi",
        }
        BWP{
            "BWP",
            "pula ya Botthwana",
        }
        CAD{
            "CA$",
            "dola ya Kanada",
        }
        CDF{
            "CDF",
            "faranga ya Kongo",
        }
        CHF{
            "CHF",
            "faranga ya Uthwithi",
        }
        CNY{
            "CN¥",
            "yuan renminbi ya China",
        }
        CVE{
            "CVE",
            "ethkudo ya Kepuvede",
        }
        DJF{
            "DJF",
            "faranga ya Jibuti",
        }
        DZD{
            "DZD",
            "dinari ya Aljeria",
        }
        EGP{
            "EGP",
            "pauni ya Mithri",
        }
        ERN{
            "ERN",
            "nakfa ya Eritrea",
        }
        ETB{
            "ETB",
            "bir ya Uhabeshi",
        }
        EUR{
            "€",
            "yuro",
        }
        GBP{
            "£",
            "pauni ya Uingeredha",
        }
        GHC{
            "GHC",
            "thedi ya Ghana",
        }
        GMD{
            "GMD",
            "dalathi ya Gambia",
        }
        GNS{
            "GNS",
            "faranga ya Gine",
        }
        INR{
            "Rs.",
            "rupia ya India",
        }
        JPY{
            "JP¥",
            "tharafu ya Kijapani",
        }
        KES{
            "KES",
            "shilingi ya Kenya",
        }
        KMF{
            "KMF",
            "faranga ya Komoro",
        }
        LRD{
            "LRD",
            "dola ya Liberia",
        }
        LSL{
            "LSL",
            "loti ya Lethoto",
        }
        LYD{
            "LYD",
            "dinari ya Libya",
        }
        MAD{
            "MAD",
            "dirham ya Moroko",
        }
        MGA{
            "MGA",
            "faranga ya Bukini",
        }
        MRO{
            "MRO",
            "ugwiya ya Moritania",
        }
        MUR{
            "MUR",
            "rupia ya Morithi",
        }
        MWK{
            "MWK",
            "kwacha ya Malawi",
        }
        MZM{
            "MZM",
            "metikali ya Mthumbiji",
        }
        NAD{
            "NAD",
            "dola ya Namibia",
        }
        NGN{
            "NGN",
            "naira ya Nijeria",
        }
        RWF{
            "RWF",
            "faranga ya Rwanda",
        }
        SAR{
            "SAR",
            "riyal ya Thaudia",
        }
        SCR{
            "SCR",
            "rupia ya Shelisheli",
        }
        SDG{
            "SDG",
            "dinari ya Thudani",
        }
        SDP{
            "SDP",
            "pauni ya Thudani",
        }
        SHP{
            "SHP",
            "pauni ya Thantahelena",
        }
        SLL{
            "SLL",
            "leoni",
        }
        SOS{
            "SOS",
            "shilingi ya Thomalia",
        }
        STD{
            "STD",
            "dobra ya Thao Tome na Principe",
        }
        SZL{
            "SZL",
            "lilangeni",
        }
        TND{
            "TND",
            "dinari ya Tunithia",
        }
        TZS{
            "TSh",
            "shilingi ya Tandhania",
        }
        UGX{
            "UGX",
            "shilingi ya Uganda",
        }
        USD{
            "US$",
            "dola ya Marekani",
        }
        XAF{
            "FCFA",
            "faranga CFA BEAC",
        }
        XOF{
            "CFA",
            "faranga CFA BCEAO",
        }
        ZAR{
            "ZAR",
            "randi ya Afrika Kuthini",
        }
        ZMK{
            "ZMK",
            "kwacha ya Dhambia (1968-2012)",
        }
        ZMW{
            "ZMW",
            "kwacha ya Dhambia",
        }
        ZWD{
            "ZWD",
            "dola ya Dhimbabwe",
        }
    }
    Version{"2.0.82.45"}
}
