﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/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{
            "₹",
            "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.1.15.45"}
}
