﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/kln.xml
// *
// ***************************************************************************
kln{
    Currencies{
        AED{
            "AED",
            "Rabisiekab Kibagegeitab arabuk",
        }
        AOA{
            "AOA",
            "Rabisiekab Angolan",
        }
        AUD{
            "A$",
            "Dolaitab Australian",
        }
        BHD{
            "BHD",
            "Rabisiekab Bahrain",
        }
        BIF{
            "BIF",
            "Rabisiekab Burundi",
        }
        BWP{
            "BWP",
            "Rabisiekab Botswana",
        }
        CAD{
            "CA$",
            "Dolaitab Kanada",
        }
        CDF{
            "CDF",
            "Rabisiekab Congo",
        }
        CHF{
            "CHF",
            "Rabisiekab Swiss",
        }
        CNY{
            "CN¥",
            "Rabisiekab China",
        }
        CVE{
            "CVE",
            "Rabisiekab Kepuvede",
        }
        DJF{
            "DJF",
            "Rabisiekab Jibuti",
        }
        DZD{
            "DZD",
            "Rabisiekab Algerian",
        }
        EGP{
            "EGP",
            "Pauditab Misri",
        }
        ERN{
            "ERN",
            "Rabisiekab Eritrea",
        }
        ETB{
            "ETB",
            "Rabisiekab Ethiopia",
        }
        EUR{
            "€",
            "Yuroit",
        }
        GBP{
            "£",
            "pounditab Uingereza",
        }
        GHC{
            "GHC",
            "Rabisiekab Ghana",
        }
        GMD{
            "GMD",
            "Rabisiekab Gambia",
        }
        GNS{
            "GNS",
            "Rabisiekab Guinea",
        }
        INR{
            "₹",
            "Rabisiekab India",
        }
        JPY{
            "JP¥",
            "Rabisiekab Japan",
        }
        KES{
            "Ksh",
            "Silingitab ya Kenya",
        }
        KMF{
            "KMF",
            "Rabisiekab Komoro",
        }
        LRD{
            "LRD",
            "Dolaitab Liberia",
        }
        LSL{
            "LSL",
            "Rabisiekab Lesoto",
        }
        LYD{
            "LYD",
            "Rabisiekab Libya",
        }
        MAD{
            "MAD",
            "Rabisiekab Moroccan",
        }
        MGA{
            "MGA",
            "Rabisiekab Malagasy",
        }
        MRO{
            "MRO",
            "Rabisiekab Mauritania",
        }
        MUR{
            "MUR",
            "Rabisiekab Mauritius",
        }
        MWK{
            "MWK",
            "Rabisiekaby Malawi",
        }
        MZM{
            "MZM",
            "Rabisiekab Msumbiji",
        }
        NAD{
            "NAD",
            "Dolaitab Namibia",
        }
        NGN{
            "NGN",
            "Rabisiekab Nigeria",
        }
        RWF{
            "RWF",
            "Rabisiekab Rwanda",
        }
        SAR{
            "SAR",
            "Rabisiekab Saudia",
        }
        SCR{
            "SCR",
            "Rabisiekab Shelisheli",
        }
        SDG{
            "SDG",
            "Pouditab Sudan",
        }
        SHP{
            "SHP",
            "Pouditab helena ne tilil",
        }
        SLL{
            "SLL",
            "Leonit",
        }
        SOS{
            "SOS",
            "siligitab Somalia",
        }
        STD{
            "STD",
            "Rabisiekab Sao Tome ak Principe",
        }
        SZL{
            "SZL",
            "Lilangenit",
        }
        TND{
            "TND",
            "RabisiekabTunisia",
        }
        TZS{
            "TZS",
            "silingitab Tanzania",
        }
        UGX{
            "UGX",
            "Silingitab Uganda",
        }
        USD{
            "US$",
            "Dolaitab ya Amareka",
        }
        XAF{
            "FCFA",
            "Rabisiekab CFA BEAC",
        }
        XOF{
            "CFA",
            "Rabisiekab CFA BCEAO",
        }
        ZAR{
            "ZAR",
            "Randitab Afrika nebo murot tai",
        }
        ZMK{
            "ZMK",
            "Kwachaitab Zambia (1968–2012)",
        }
        ZMW{
            "ZMW",
            "Kwachaitab Zambia",
        }
        ZWD{
            "ZWD",
            "Dolaitab ya Zimbabwe",
        }
    }
    Version{"2.1.19.14"}
}
