﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml
sn{
    Currencies{
        AED{
            "AED",
            "Diramu re United Arab Emirates",
        }
        AOA{
            "AOA",
            "Kwanza ye Angola",
        }
        AUD{
            "A$",
            "Dora re Australia",
        }
        BHD{
            "BHD",
            "Dhinari re Bhahareni",
        }
        BIF{
            "BIF",
            "Furenki re Bhurundi",
        }
        BWP{
            "BWP",
            "Pura re Botswana",
        }
        CAD{
            "CA$",
            "Dora re Kanada",
        }
        CDF{
            "CDF",
            "Furenki re Kongo",
        }
        CHF{
            "CHF",
            "Furenki re Swisi",
        }
        CNY{
            "CN¥",
            "Yuan Renminbi ye China",
        }
        CVE{
            "CVE",
            "Dhora re Escudo",
        }
        DJF{
            "DJF",
            "Furenki re Jibhuti",
        }
        DZD{
            "DZD",
            "Dhinari re Aljeria",
        }
        EGP{
            "EGP",
            "Paundi re Ijipita",
        }
        ERN{
            "ERN",
            "Nakfa re Eritrea",
        }
        ETB{
            "ETB",
            "Dhora re Etiopia",
        }
        EUR{
            "€",
            "Yuro",
        }
        GBP{
            "£",
            "Paundi ye Bhiriteni",
        }
        GHC{
            "GHC",
            "Sedi ye Ghana",
        }
        GMD{
            "GMD",
            "Dalasi ye Gambia",
        }
        GNS{
            "GNS",
            "Furenki re Gine",
        }
        INR{
            "₹",
            "Rupe re India",
        }
        JPY{
            "JP¥",
            "Yeni ye Japani",
        }
        KES{
            "KES",
            "Shiringi ye Kenya",
        }
        KMF{
            "KMF",
            "Furenki re Komoro",
        }
        LRD{
            "LRD",
            "Dora re Liberia",
        }
        LSL{
            "LSL",
            "Loti ye Lesoto",
        }
        LYD{
            "LYD",
            "Dinari re Libya",
        }
        MAD{
            "MAD",
            "Dirham ye Moroko",
        }
        MGA{
            "MGA",
            "Furenki re Malagasi",
        }
        MRO{
            "MRO",
            "Ugwiya ye Moritania (1973–2017)",
        }
        MRU{
            "MRU",
            "Ugwiya ye Moritania",
        }
        MUR{
            "MUR",
            "Rupi ye Morishasi",
        }
        MWK{
            "MWK",
            "Kwacha ye Malawi",
        }
        MZM{
            "MZM",
            "Metika ye Mozambiki",
        }
        NAD{
            "NAD",
            "Dora re Namibia",
        }
        NGN{
            "NGN",
            "Naira ye Nijeria",
        }
        RWF{
            "RWF",
            "Furenki re Ruwanda",
        }
        SAR{
            "SAR",
            "Riyali re Saudi",
        }
        SCR{
            "SCR",
            "Rupi re Seyisheri",
        }
        SDG{
            "SDG",
            "Dinari re Sudani",
        }
        SDP{
            "SDP",
            "Paundi re Sudani",
        }
        SHP{
            "SHP",
            "Paundi re Senti Helena",
        }
        SLL{
            "SLL",
            "Leoni",
        }
        SOS{
            "SOS",
            "Shiringi re Somalia",
        }
        STD{
            "STD",
            "Dobra re Sao Tome ne Principe (1977–2017)",
        }
        STN{
            "STN",
            "Dobra re Sao Tome ne Principe",
        }
        SZL{
            "SZL",
            "Lilangeni",
        }
        TND{
            "TND",
            "Dinari re Tunisia",
        }
        TZS{
            "TZS",
            "Shiringi re Tanzania",
        }
        UGX{
            "UGX",
            "Shiringi re Uganda",
        }
        USD{
            "US$",
            "Dora re Amerika",
        }
        XAF{
            "FCFA",
            "Furenki CFA BEAC",
        }
        XOF{
            "F CFA",
            "Furenki CFA BCEAO",
        }
        ZAR{
            "ZAR",
            "Randi",
        }
        ZMK{
            "ZMK",
            "Kwacha ye Zambia (1968–2012)",
        }
        ZMW{
            "ZMW",
            "Kwacha ye Zambia",
        }
        ZWD{
            "ZWD",
            "Dora re Zimbabwe",
        }
    }
    CurrencyUnitPatterns{
        one{"{0} {1}"}
        other{"{0} {1}"}
    }
}
