# Copyright 2012 Google Inc.
# 
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
# 
# http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.

#
# The key is an ISO4217 currency code, and the value is of the form:
#   display name|symbol|decimal digits|not-used-flag|rounding
# 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
# If a currency should be rounded to a multiple of of the least significant
#   digit, rounding will be present
# Trailing empty fields can be omitted

# DO NOT EDIT - GENERATED FROM CLDR DATA
ADP = peseta andorrane||0|1
AED = dirham des Émirats arabes unis
AFA = afghani (1927–2002)|||1
AFN = afghani afghan||0
ALK = lek albanais (1947–1961)|||1
ALL = lek albanais||0
AMD = dram arménien||0
ANG = florin antillais
AOA = kwanza angolais
AOK = kwanza angolais (1977–1990)|||1
AON = nouveau kwanza angolais (1990–2000)|||1
AOR = kwanza angolais réajusté (1995–1999)|||1
ARA = austral argentin|||1
ARL = peso lourd argentin (1970–1983)|||1
ARM = peso argentin (1881–1970)|||1
ARP = peso argentin (1983–1985)|||1
ARS = peso argentin|$AR
ATS = schilling autrichien|||1
AUD = dollar australien|$AU
AWG = florin arubais
AZM = manat azéri (1993–2006)|||1
AZN = manat azéri
BAD = dinar bosniaque|||1
BAM = mark convertible bosniaque
BBD = dollar barbadien
BDT = taka bangladeshi
BEC = franc belge (convertible)|||1
BEF = franc belge|FB||1
BEL = franc belge (financier)|||1
BGL = lev bulgare (1962–1999)|||1
BGN = lev bulgare
BHD = dinar bahreïni||3
BIF = franc burundais||0
BMD = dollar bermudien|$BM
BND = dollar brunéien|$BN
BOB = boliviano bolivien
BOL = boliviano bolivien (1863–1963)|||1
BOP = peso bolivien|||1
BOV = mvdol bolivien|||1
BRB = nouveau cruzeiro brésilien (1967–1986)|||1
BRC = cruzado brésilien (1986–1989)|||1
BRE = cruzeiro brésilien (1990–1993)|||1
BRL = réal brésilien|R$
BRN = nouveau cruzado|||1
BRR = cruzeiro|||1
BRZ = cruzeiro brésilien (1942–1967)|||1
BSD = dollar bahaméen|$BS
BTN = ngultrum bouthanais
BUK = kyat birman|||1
BWP = pula botswanais
BYB = nouveau rouble biélorusse (1994–1999)|||1
BYR = rouble biélorusse||0
BZD = dollar bélizéen|$BZ
CAD = dollar canadien|$CA
CDF = franc congolais
CHE = euro WIR|||1
CHF = franc suisse
CHW = franc WIR|||1
CLE = escudo chilien|||1
CLF = unité d’investissement chilienne||0|1
CLP = peso chilien|$CL|0
CNY = yuan renminbi chinois|¥CN
COP = peso colombien|$CO|0
COU = unité de valeur réelle colombienne|||1
CRC = colón costaricain||0
CSD = dinar serbo-monténégrin|||1
CSK = couronne forte tchécoslovaque|||1
CUC = peso cubain convertible
CUP = peso cubain
CVE = escudo capverdien|$CV
CYP = livre chypriote|£CY||1
CZK = couronne tchèque
DDM = mark est-allemand|||1
DEM = mark allemand|||1
DJF = franc djiboutien||0
DKK = couronne danoise
DOP = peso dominicain
DZD = dinar algérien
ECS = sucre équatorien|||1
ECV = unité de valeur constante équatoriale (UVC)|||1
EEK = couronne estonienne|||1
EGP = livre égyptienne|£EG
ERN = nafka érythréen
ESA = peseta espagnole (compte A)|||1
ESB = peseta espagnole (compte convertible)|||1
ESP = peseta espagnole||0|1
ETB = birr éthiopien
EUR = euro|€
FIM = mark finlandais|||1
FJD = dollar fidjien|$FJ
FKP = livre des Falkland|£FK
FRF = franc français|F||1
GBP = livre sterling|£GB
GEK = coupon de lari géorgien|||1
GEL = lari géorgien
GHC = cédi|||1
GHS = cédi ghanéen
GIP = livre de Gibraltar|£GI
GMD = dalasi gambien
GNF = franc guinéen||0
GNS = syli guinéen|||1
GQE = ekwélé équatoguinéen|||1
GRD = drachme grecque|||1
GTQ = quetzal guatémaltèque
GWE = escudo de Guinée portugaise|||1
GWP = peso bissau-guinéen|||1
GYD = dollar du Guyana||0
HKD = dollar de Hong Kong|$HK
HNL = lempira hondurien
HRD = dinar croate|||1
HRK = kuna croate
HTG = gourde haïtienne
HUF = forint hongrois||0
IDR = roupie indonésienne||0
IEP = livre irlandaise|£IE||1
ILP = livre israélienne|£IL||1
ILS = nouveau shekel israélien|₪
INR = roupie indienne|₹
IQD = dinar irakien||0
IRR = rial iranien||0
ISK = couronne islandaise||0
ITL = lire italienne|₤IT|0|1
JMD = dollar jamaïcain
JOD = dinar jordanien||3
JPY = yen japonais|¥JP|0
KES = shilling kényan
KGS = som kirghize
KHR = riel cambodgien
KMF = franc comorien||0
KPW = won nord-coréen||0
KRW = won sud-coréen|₩|0
KWD = dinar koweïtien||3
KYD = dollar des îles Caïmans
KZT = tenge kazakh
LAK = kip loatien||0
LBP = livre libanaise|£LB|0
LKR = roupie srilankaise
LRD = dollar libérien|$LR
LSL = loti lesothan
LTL = litas lituanien
LTT = talonas lituanien|||1
LUC = franc convertible luxembourgeois|||1
LUF = franc luxembourgeois||0|1
LUL = franc financier luxembourgeois|||1
LVL = lats letton|||1
LVR = rouble letton|||1
LYD = dinar libyen||3
MAD = dirham marocain
MAF = franc marocain|||1
MDL = leu moldave
MGA = ariary malgache||0
MGF = franc malgache||0|1
MKD = denar macédonien
MLF = franc malien|||1
MMK = kyat myanmarais||0
MNT = tugrik mongol||0
MOP = pataca macanaise
MRO = ouguiya mauritanien||0
MTL = lire maltaise|||1
MTP = livre maltaise|£MT||1
MUR = roupie mauricienne||0
MVR = rufiyaa maldivien
MWK = kwacha malawite
MXN = peso mexicain|$MX
MXP = peso d’argent mexicain (1861–1992)|||1
MXV = unité de conversion mexicaine (UDI)|||1
MYR = ringgit malais
MZE = escudo mozambicain|||1
MZM = métical|||1
MZN = metical mozambicain
NAD = dollar namibien|$NA
NGN = naira nigérian
NIC = cordoba|||1
NIO = córdoba oro nicaraguayen
NLG = florin néerlandais|||1
NOK = couronne norvégienne
NPR = roupie népalaise
NZD = dollar néo-zélandais|$NZ
OMR = rial omanais||3
PAB = balboa panaméen
PEI = inti péruvien|||1
PEN = nouveau sol péruvien
PES = sol péruvien|||1
PGK = kina papouan-néo-guinéen
PHP = peso philippin
PKR = roupie pakistanaise||0
PLN = zloty polonais
PLZ = zloty (1950–1995)|||1
PTE = escudo portugais|||1
PYG = guaraní paraguayen||0
QAR = rial qatari
RHD = dollar rhodésien|$RH||1
ROL = ancien leu roumain|||1
RON = leu roumain
RSD = dinar serbe||0
RUB = rouble russe
RUR = rouble russe (1991–1998)|||1
RWF = franc rwandais||0
SAR = rial saoudien
SBD = dollar des îles Salomon|$SB
SCR = roupie des Seychelles
SDD = dinar soudanais|||1
SDG = livre soudanaise|£SD
SDP = livre soudanaise (1956–2007)|||1
SEK = couronne suédoise
SGD = dollar de Singapour|$SG
SHP = livre de Sainte-Hélène|£SH
SIT = tolar slovène|||1
SKK = couronne slovaque|||1
SLL = leone sierra-léonais||0
SOS = shilling somalien||0
SRD = dollar surinamais|$SR
SRG = florin surinamais|||1
SSP = livre sud-soudanaise|£SS
STD = dobra santoméen||0
SUR = rouble soviétique|||1
SVC = colón salvadorien|||1
SYP = livre syrienne||0
SZL = lilangeni swazi
THB = baht thaïlandais|฿
TJR = rouble tadjik|||1
TJS = somoni tadjik
TMM = manat turkmène||0|1
TMT = nouveau manat turkmène
TND = dinar tunisien||3
TOP = pa’anga tongan
TPE = escudo timorais|||1
TRL = livre turque (1844–2005)||0|1
TRY = livre turque|TL
TTD = dollar trinidadien|$TT
TWD = nouveau dollar taïwanais|$TW
TZS = shilling tanzanien||0
UAH = hryvnia ukrainienne
UAK = karbovanetz|||1
UGS = shilling ougandais (1966–1987)|||1
UGX = shilling ougandais||0
USD = dollar des États-Unis|$US
USN = dollar des Etats-Unis (jour suivant)|||1
USS = dollar des Etats-Unis (jour même)|||1
UYI = peso uruguayen (unités indexées)||0|1
UYP = peso uruguayen (1975–1993)|||1
UYU = peso uruguayen|$UY
UZS = sum ouzbek||0
VEB = bolivar vénézuélien (1871–2008)|||1
VEF = bolivar vénézuélien
VND = dông vietnamien|₫|0
VUV = vatu vanuatuan||0
WST = tala samoan|WS$
XAF = franc CFA (BEAC)|FCFA|0
XAG = argent|||1
XAU = or|||1
XBA = unité européenne composée|||1
XBB = unité monétaire européenne|||1
XBC = unité de compte européenne (XBC)|||1
XBD = unité de compte européenne (XBD)|||1
XCD = dollar des Caraïbes orientales|EC$
XDR = droit de tirage spécial|||1
XEU = unité de compte européenne (ECU)|||1
XFO = franc or|||1
XFU = franc UIC|||1
XOF = franc CFA (BCEAO)|CFA|0
XPD = palladium|||1
XPF = franc CFP|FCFP|0
XPT = platine|||1
XRE = type de fonds RINET|||1
XTS = (devise de test)|||1
XXX = devise inconnue ou non valide|||1
YDD = dinar du Yémen|||1
YER = rial yéménite||0
YUD = nouveau dinar yougoslave|||1
YUM = dinar yougoslave Noviy|||1
YUN = dinar yougoslave convertible|||1
ZAL = rand sud-africain (financier)|||1
ZAR = rand sud-africain
ZMK = kwacha zambien (1968–2012)||0|1
ZMW = kwacha zambien
ZRN = nouveau zaïre zaïrien|||1
ZRZ = zaïre zaïrois|||1
ZWD = dollar zimbabwéen||0|1
ZWL = dollar zimbabwéen (2009)|||1
ZWR = dollar zimbabwéen (2008)|||1
