# Do not edit - generated from Unicode CLDR data
#
# The key is an ISO4217 currency code, and the value is of the form:
#   display name|symbol|decimal digits|not-used-flag
# If a symbol is not supplied, the currency code will be used
# If # of decimal digits is omitted, 2 is used
# If a currency is not generally used, not-used-flag=1
# Trailing empty fields can be omitted

AED = Diriháamu ya Ʉtemi wa Kɨaráabu
AOA = Kwáanza ya Angóola|Kz
AUD = Dóola ya Ausitereelía|AU$
BHD = Dináari ya Baharéeni|BD|3
BIF = Faráanga ya Burúundi|FBu|0
BWP = Púula ya Botiswáana
CAD = Dóola ya Kánada|CA$
CDF = Faráanga ya Kóongo
CHF = Faráaka ya Uswíisi
CNY = Yúani Renimínibi ya Chíina|CN¥
CVE = Esikúudo ya Kepuvéede|CV$
DJF = Faráanga ya Jibóuti|Fdj|0
DZD = Dináairi ya Alijéria|DA
EGP = Páundi ya Mísiri|EG£
ERN = Nákɨfa ya Eriterea|Nfk
ETB = Bíiri ya Ʉhabéeshi|Br
EUR = Yúuro|€
GBP = Páundi ya Ʉɨngɨréesa|UK£
GHC = Séedi ya Gáana|₵||1
GMD = Daláasi ya Gámbia
GNS = Faráanga ya Gíine|||1
INR = Rupía ya Índia|Rs.
JPY = Yéeni ya Japáani|JP¥|0
KES = Shilíingi ya Kéenya|Ksh
KMF = Faráanga ya Komóoro|CF|0
LRD = Dóola ya Libéria|L$
LSL = Lóoti ya Lesóoto
LYD = Dináari ya Líbia|LD|3
MAD = Diriháamu ya Moróoko
MGA = Mpía ya bukini||0
MRO = Ungwíiya ya Moritánia|UM|0
MUR = Rupía ya Moríisi|MURs|0
MWK = Kwáacha ya Maláawi
MZM = Metikáali ya Musumbíiji|Mt||1
NAD = Dóola ya Namíbia|N$
NGN = Naíira ya Niijéria|₦
RWF = Faráanga ya Rwáanda||0
SAR = Riyáali ya Saudía|SR
SCR = Rupía ya Shelishéeli|SRe
SDG = Páundi ya Sudáani
SHP = Páundi ya Mʉtakatíifu Heléena|SH£
SLL = Leóoni|Le|0
SOS = Shilíingi ya Somália|Ssh|0
STD = Dóbura ya SaoTóome na Pirínsipe|Db|0
SZL = Lilengéeni
TND = Dináari ya Tunísia|DT|3
TZS = Shilíingi ya Taansanía|TSh|0
UGX = Shilíingi ya Ugáanda|USh|0
USD = Dóola ya Amerɨ́ka|US$
XAF = Faráanga ya CFA BEAC|FCFA|0
XOF = Faráanga ya CFA BCEAO|CFA|0
ZAR = Ráandi ya Afɨrɨka ya Saame|R
ZMK = Kwácha ya Sámbia|ZK|0
ZWD = Dóola ya Simbáabwe|Z$|0|1
