# Copyright 2014 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:
#  cldrVersion=25
#  date=$Date: 2014-03-01 06:57:43 +0100 (Sat, 01 Mar 2014) $
#  number=$Revision: 9852 $
#  type=fr
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|$
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|$
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|$
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|$
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|$|0
CNY = yuan renminbi chinois|¥
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|£
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|$
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|¥|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|$
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|$
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|$
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|$
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|$
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|£
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
TTD = dollar trinidadien|$
TWD = nouveau dollar taïwanais|NT$
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|$
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
