﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/seh.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/seh.xml
 */
seh{
    Currencies{
        AED{
            "AED",
            "Dirém dos Emirados Árabes Unidos",
        }
        AOA{
            "Kz",
            "Cuanza angolano",
        }
        AUD{
            "AU$",
            "Dólar australiano",
        }
        BHD{
            "BD",
            "Dinar bareinita",
        }
        BIF{
            "FBu",
            "Franco do Burundi",
        }
        BWP{
            "BWP",
            "Pula botsuanesa",
        }
        CAD{
            "CA$",
            "Dólar canadense",
        }
        CDF{
            "CDF",
            "Franco congolês",
        }
        CHF{
            "CHF",
            "Franco suíço",
        }
        CNY{
            "CN¥",
            "Yuan Renminbi chinês",
        }
        CVE{
            "CV$",
            "Escudo cabo-verdiano",
        }
        DJF{
            "Fdj",
            "Franco do Djibuti",
        }
        DZD{
            "DA",
            "Dinar argelino",
        }
        EGP{
            "EGP",
            "Libra egípcia",
        }
        ERN{
            "Nfk",
            "Nakfa da Eritréia",
        }
        ETB{
            "Br",
            "Birr etíope",
        }
        EUR{
            "€",
            "Euro",
        }
        GBP{
            "£",
            "Libra esterlina britânica",
        }
        GHC{
            "₵",
            "Cedi de Gana (1979-2007)",
        }
        GMD{
            "GMD",
            "Dalasi de Gâmbia",
        }
        GNS{
            "GNS" /** ===  */,
            "Syli da Guiné",
        }
        INR{
            "Rs",
            "Rúpia indiana",
        }
        JPY{
            "JP¥",
            "Iene japonês",
        }
        KES{
            "Ksh",
            "Xelim queniano",
        }
        KMF{
            "CF",
            "Franco de Comores",
        }
        LRD{
            "L$",
            "Dólar liberiano",
        }
        LSL{
            "LSL",
            "Loti do Lesoto",
        }
        LYD{
            "LD",
            "Dinar líbio",
        }
        MAD{
            "MAD",
            "Dirém marroquino",
        }
        MGA{
            "MGA",
            "Franco de Madagascar",
        }
        MRO{
            "UM",
            "Ouguiya da Mauritânia",
        }
        MUR{
            "MURs",
            "Rupia de Maurício",
        }
        MWK{
            "MWK",
            "Cuacha do Maláui",
        }
        MZM{
            "Mt",
            "Metical antigo de Moçambique",
        }
        NAD{
            "N$",
            "Dólar da Namíbia",
        }
        NGN{
            "₦",
            "Naira nigeriana",
        }
        RWF{
            "RWF",
            "Franco ruandês",
        }
        SAR{
            "SR",
            "Rial saudita",
        }
        SCR{
            "SRe",
            "Rupia das Seychelles",
        }
        SDG{
            "SDG",
            "Dinar sudanês",
        }
        SDP{
            "SDP" /** ===  */,
            "Libra sudanesa antiga",
        }
        SHP{
            "SH£",
            "Libra de Santa Helena",
        }
        SLL{
            "Le",
            "Leone de Serra Leoa",
        }
        SOS{
            "Ssh",
            "Xelim somali",
        }
        STD{
            "Db",
            "Dobra de São Tomé e Príncipe",
        }
        SZL{
            "SZL",
            "Lilangeni da Suazilândia",
        }
        TND{
            "DT",
            "Dinar tunisiano",
        }
        TZS{
            "TSh",
            "Xelim da Tanzânia",
        }
        UGX{
            "USh",
            "Xelim ugandense (1966-1987)",
        }
        USD{
            "US$",
            "Dólar norte-americano",
        }
        XAF{
            "FCFA",
            "Franco CFA BEAC",
        }
        XOF{
            "CFA",
            "Franco CFA BCEAO",
        }
        ZAR{
            "R",
            "Rand sul-africano",
        }
        ZMK{
            "ZK",
            "Cuacha zambiano",
        }
        ZWD{
            "Z$",
            "Dólar do Zimbábue",
        }
    }
    Version{"2.0.47.38"}
}
