﻿// ***************************************************************************
// *
// * Copyright (C) 2013 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/xog.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/xog.xml
 */
xog{
    Currencies{
        AED{
            "AED",
            "Diraamu eya Emireeti",
        }
        AOA{
            "AOA",
            "Kwanza y'Angola",
        }
        AUD{
            "A$",
            "Doola y'Awusiturelya",
        }
        BHD{
            "BHD",
            "Dinaali ya Baareeni",
        }
        BIF{
            "BIF",
            "Faranga ya burundi",
        }
        BWP{
            "BWP",
            "Pula ya Botiswana",
        }
        CAD{
            "CA$",
            "Doola ya Kanada",
        }
        CDF{
            "CDF",
            "Faranga ya Kongo",
        }
        CHF{
            "CHF",
            "Faranga ey'eSwitizirandi",
        }
        CNY{
            "CN¥",
            "Yuwani Reniminibi ya Cayina",
        }
        CVE{
            "CVE",
            "Esikudo ya Keepu Veredi",
        }
        DJF{
            "DJF",
            "Faranga ya Jjibuti",
        }
        DZD{
            "DZD",
            "Dinaali y'Aligerya",
        }
        EGP{
            "EGP",
            "Pawunda ya Misiri",
        }
        ERN{
            "ERN",
            "Nakifa ya Eritureya",
        }
        ETB{
            "ETB",
            "Biiru ya Esyopya",
        }
        EUR{
            "€",
            "Yuro",
        }
        GBP{
            "£",
            "Pawunda ya Bungereza",
        }
        GHC{
            "GHC",
            "Sedi ya Gana",
        }
        GMD{
            "GMD",
            "Dalasi ya Gambya",
        }
        GNS{
            "GNS",
            "Faranga ya Gini",
        }
        INR{
            "Rs.",
            "Rupiya ya Buyindi",
        }
        JPY{
            "JP¥",
            "Yeni ya Japani",
        }
        KES{
            "KES",
            "Silingi ya Kenya",
        }
        KMF{
            "KMF",
            "Faranga ya Komoro",
        }
        LRD{
            "LRD",
            "Doola ya Liberya",
        }
        LSL{
            "LSL",
            "Loti ya Lesoso",
        }
        LYD{
            "LYD",
            "Dinaali ya Libya",
        }
        MAD{
            "MAD",
            "Diraamu ey'eMoroko",
        }
        MGA{
            "MGA",
            "Faranga ey'eMalagase",
        }
        MRO{
            "MRO",
            "Wugwiya ey'eMawritenya",
        }
        MUR{
            "MUR",
            "Rupiya ey'eMawurisyasi",
        }
        MWK{
            "MWK",
            "Kwaca ey'eMalawi",
        }
        MZM{
            "MZM",
            "Metikaali ey'eMozambiiki",
        }
        NGN{
            "NGN",
            "Nayira ey'eNayijerya",
        }
        RWF{
            "RWF",
            "Faranga ey'eRwanda",
        }
        SAR{
            "SAR",
            "Riyaali ey'eBuwarabu",
        }
        SCR{
            "SCR",
            "Rupiya ey'eSesere",
        }
        SDG{
            "SDG",
            "Dinaali ey'eSudaani",
        }
        SDP{
            "SDP",
            "Pawunda ey'eSudaani",
        }
        SHP{
            "SHP",
            "Pawunda ey'eSenti Herena",
        }
        SLL{
            "SLL",
            "Lewone",
        }
        SOS{
            "SOS",
            "Silingi ey'eSomaliya",
        }
        STD{
            "STD",
            "Dobura ey'eSantome ne Purincipe",
        }
        SZL{
            "SZL",
            "Lilangeni",
        }
        TND{
            "TND",
            "Dinaali ey'eTunizya",
        }
        TZS{
            "TZS",
            "Silingi ey'eTanzaniya",
        }
        UGX{
            "USh",
            "Silingi eya Yuganda",
        }
        USD{
            "US$",
            "Doola ey'Amerika",
        }
        XAF{
            "FCFA",
            "Faranga yamu Afirika ya wakati",
        }
        XOF{
            "CFA",
            "Faranga yamu Afirika ya bugwanjuba",
        }
        ZAR{
            "ZAR",
            "Randi ey'eSawusafirika",
        }
        ZMK{
            "ZMK",
            "Kwaca ey'eZambya (1968-2012)",
        }
        ZMW{
            "ZMW",
            "Kwaca ey'eZambya",
        }
        ZWD{
            "ZWD",
            "Doola ey'eZimbabwe",
        }
    }
    Version{"2.0.82.45"}
}
