﻿// ***************************************************************************
// *
// * 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/shi.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/main/shi.xml
 */
shi{
    Currencies{
        AED{
            "AED",
            "adrim n limarat",
        }
        AOA{
            "Kz",
            "kwanza n angula",
        }
        AUD{
            "AU$",
            "adular n ustralya",
        }
        BHD{
            "BD",
            "adinar n bḥrayn",
        }
        BIF{
            "FBu",
            "frank n burundi",
        }
        BWP{
            "BWP",
            "abula n butswana",
        }
        CAD{
            "CA$",
            "adular n kanada",
        }
        CDF{
            "CDF",
            "frank n kungu",
        }
        CHF{
            "CHF",
            "afrank n swisra",
        }
        CNY{
            "CN¥",
            "ayan n ccinwa",
        }
        CVE{
            "CV$",
            "iskudu n kabbirdi",
        }
        DJF{
            "Fdj",
            "frank n djibuti",
        }
        DZD{
            "DA",
            "adinar n dzayr",
        }
        EGP{
            "EG£",
            "ajnih n miṣṛ",
        }
        ERN{
            "Nfk",
            "nafka n iritirya",
        }
        ETB{
            "Br",
            "bir n ityubya",
        }
        EUR{
            "€",
            "uru",
        }
        GBP{
            "£",
            "ajnih astrlini n nngliz",
        }
        GHC{
            "₵",
            "sidi n ɣana",
        }
        GMD{
            "GMD",
            "dalasi n gambya",
        }
        GNS{
            "GNS" /** ===  */,
            "frank n ɣinya",
        }
        INR{
            "Rs",
            "arubi n lhind",
        }
        JPY{
            "JP¥",
            "ayan n lyaban",
        }
        KES{
            "Ksh",
            "acilin n kinya",
        }
        KMF{
            "CF",
            "frank n qumuṛ",
        }
        LRD{
            "L$",
            "adular n libirya",
        }
        LSL{
            "LSL",
            "luti n liṣuṭu",
        }
        LYD{
            "LD",
            "adinar n libya",
        }
        MAD{
            "MAD",
            "adrim n lmɣrib",
        }
        MGA{
            "MGA",
            "frank n madaɣacqar",
        }
        MRO{
            "UM",
            "uqiyya n muṛiṭanya",
        }
        MUR{
            "MURs",
            "arubi n muris",
        }
        MWK{
            "MWK",
            "kwaca n malawi",
        }
        MZM{
            "Mt",
            "amitikl n muznbiq",
        }
        NAD{
            "N$",
            "adular n namibya",
        }
        NGN{
            "₦",
            "nayra n nijirya",
        }
        RWF{
            "RWF",
            "afrank n rwanda",
        }
        SAR{
            "SR",
            "aryal n ssaɛudiya",
        }
        SCR{
            "SRe",
            "arubi n ssicil",
        }
        SDG{
            "SDG",
            "adinar n ssudan",
        }
        SDP{
            "SDP" /** ===  */,
            "ajnih n ssudan",
        }
        SHP{
            "SH£",
            "ajnih n santilin",
        }
        SLL{
            "Le",
            "liyun",
        }
        SOS{
            "Ssh",
            "acilin n ṣṣumal",
        }
        STD{
            "Db",
            "adubra n sanṭumi",
        }
        SZL{
            "SZL",
            "lilanjini",
        }
        TND{
            "DT",
            "adinar n tuns",
        }
        TZS{
            "TSh",
            "acilin n ṭanẓanya",
        }
        UGX{
            "USh",
            "acilin n uɣanda",
        }
        USD{
            "US$",
            "adular n iwunak imunn",
        }
        XAF{
            "FCFA",
            "frank ṣifa",
        }
        XOF{
            "CFA",
            "frank ṣifa bisaw",
        }
        ZAR{
            "R",
            "arand n afriqya n iffus",
        }
        ZMK{
            "ZK",
            "akwaca n zambya",
        }
        ZWD{
            "Z$",
            "adular n zimbabwi",
        }
    }
    Version{"2.0.45.90"}
}
