# 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=ca
ADP = pesseta andorrana||0|1
AED = dirhem dels Emirats Àrabs Units
AFA = afgani afganès (1927–2002)|||1
AFN = afgani afganès||0
ALK = lek albanès (1946–1965)|||1
ALL = lek albanès||0
AMD = dram armeni||0
ANG = florí de les Antilles Neerlandeses
AOA = kwanza angolès
AOK = kwanza angolès (1977–1991)|||1
AON = nou kwanza angolès (1990–2000)|||1
AOR = kwanza angolès reajustat (1995–1999)|||1
ARA = austral argentí|||1
ARL = peso ley argentí (1970–1983)|||1
ARM = peso argentí (1981–1970)|||1
ARP = peso argentí (1983–1985)|||1
ARS = peso argentí
ATS = xíling austríac|||1
AUD = dòlar australià|$
AWG = florí d'Aruba
AZM = manat azerbaidjanès (1993–2006)|||1
AZN = manat azerbaidjanès
BAD = dinar de Bòsnia i Hercegovina (1992–1994)|||1
BAM = marc convertible de Bòsnia i Hercegovina
BAN = nou dinar de Bòsnia i Hercegovina (1994–1997)|||1
BBD = dòlar de Barbados
BDT = taka de Bangla Desh|৳
BEC = franc belga (convertible)|||1
BEF = franc belga|||1
BEL = franc belga (financer)|||1
BGL = lev fort búlgar|||1
BGM = lev socialista búlgar|||1
BGN = lev búlgar
BGO = lev búlgar (1879–1952)|||1
BHD = dinar de Bahrain||3
BIF = franc de Burundi||0
BMD = dòlar de les Bermudes|$
BND = dòlar de Brunei
BOB = boliviano bolivià
BOL = boliviano bolivià (1863–1963)|||1
BOP = peso bolivià|||1
BOV = MVDOL bolivià|||1
BRB = cruzeiro novo brasiler (1967–1986)|||1
BRC = cruzado brasiler|||1
BRE = cruzeiro brasiler (1990–1993)|||1
BRL = real brasiler|R$
BRN = cruzado novo brasiler|||1
BRR = cruzeiro brasiler|||1
BRZ = antic cruzeiro brasiler|||1
BSD = dòlar de les Bahames|$
BTN = ngultrum de Bhutan
BUK = kyat birmà|||1
BWP = pula de Botswana
BYB = nou ruble bielorús (1994–1999)|||1
BYR = ruble bielorús||0
BZD = dòlar de Belize|$
CAD = dòlar canadenc|CA$
CDF = franc congolès
CHE = euro WIR|||1
CHF = franc suís
CHW = franc WIR|||1
CLE = escut xilè|||1
CLF = unidad de fomento xilena||0|1
CLP = peso xilè|$|0
CNY = iuan xinès|¥
COP = peso colombià||0
COU = unidad de valor real colombiana|||1
CRC = colón costa-riqueny||0
CSD = dinar serbi antic|||1
CSK = corona forta txecoslovaca|||1
CUC = peso convertible cubà
CUP = peso cubà|$
CVE = escut de Cap Verd
CYP = lliura xipriota|||1
CZK = corona txeca
DDM = marc de l'Alemanya Oriental|||1
DEM = marc alemany|||1
DJF = franc de Djibouti||0
DKK = corona danesa
DOP = peso dominicà|$
DZD = dinar algerià
ECS = sucre equatorià|||1
ECV = unidad de valor constante (UVC) equatoriana|||1
EEK = corona estoniana|||1
EGP = lliura egípcia
ERN = nakfa eritreu
ESA = pesseta espanyola (compte A)|||1
ESB = pesseta espanyola (compte convertible)|||1
ESP = pesseta espanyola|₧|0|1
ETB = birr etíop
EUR = euro|€
FIM = marc finlandès|||1
FJD = dòlar fijià
FKP = lliura de les illes Malvines
FRF = franc francès|||1
GBP = lliura esterlina britànica|£
GEK = cupó de lari georgià|||1
GEL = lari georgià
GHC = cedi ghanès (1979–2007)|||1
GHS = cedi ghanès
GIP = lliura de Gibraltar|£
GMD = dalasi gambià
GNF = franc guineà||0
GNS = syli guineà|||1
GQE = ekwele de Guinea Equatorial|||1
GRD = dracma grega|||1
GTQ = quetzal guatemalenc
GWE = escut de la Guinea Portuguesa|||1
GWP = peso de Guinea Bissau|||1
GYD = dòlar de Guyana||0
HKD = dòlar de Hong Kong|$
HNL = lempira hondurenya
HRD = dinar croat|||1
HRK = kuna croata
HTG = gourde haitià
HUF = fòrint hongarès||0
IDR = rupia indonèsia||0
IEP = lliura irlandesa|||1
ILP = lliura israeliana|||1
ILR = xéquel israelià|||1
ILS = nou xéquel israelià|₪
INR = rupia índia|₹
IQD = dinar iraquià||0
IRR = rial iranià||0
ISJ = corona islandesa antiga|||1
ISK = corona islandesa||0
ITL = lira italiana||0|1
JMD = dòlar jamaicà
JOD = dinar jordà||3
JPY = ien japonès|¥|0
KES = xíling kenyà
KGS = som kirguís
KHR = riel cambodjà
KMF = franc de les Comores||0
KPW = won nord-coreà||0
KRH = hwan sud-coreà (1953–1962)|||1
KRO = antic won sud-coreà|||1
KRW = won sud-coreà|₩|0
KWD = dinar kuwaitià||3
KYD = dòlar de les illes Caiman|$
KZT = tenge kazakh|₸
LAK = kip laosià||0
LBP = lliura libanesa||0
LKR = rupia de Sri Lanka
LRD = dòlar liberià
LSL = loti de Lesotho
LTL = litas lituà
LTT = talonas lituà|||1
LUC = franc convertible luxemburguès|||1
LUF = franc luxemburguès||0|1
LUL = franc financer luxemburguès|||1
LVL = lats letó|||1
LVR = ruble letó|||1
LYD = dinar libi||3
MAD = dírham marroquí
MAF = franc marroquí|||1
MCF = franc monegasc|||1
MDC = cupó moldau|||1
MDL = leu moldau
MGA = ariary malgaix||0
MGF = franc malgaix||0|1
MKD = denar macedoni
MKN = denar macedoni (1992–1993)|||1
MLF = franc malià|||1
MMK = kyat de Myanmar||0
MNT = tögrög mongol||0
MOP = pataca de Macau
MRO = ouguiya maurità||0
MTL = lira maltesa|||1
MTP = lliura maltesa|||1
MUR = rupia de Maurici||0
MVR = rupia de les Maldives
MWK = kwacha malawià
MXN = peso mexicà|$
MXP = peso de plata mexicà (1861–1992)|||1
MXV = unidad de inversión (UDI) mexicana|||1
MYR = ringgit de Malàisia
MZE = escut moçambiquès|||1
MZM = antic metical moçambiquès|||1
MZN = metical moçambiquès
NAD = dòlar namibià|$
NGN = naira nigerià
NIC = córdoba nicaragüenca|||1
NIO = córdoba oro nicaragüenca
NLG = florí neerlandès|||1
NOK = corona noruega
NPR = rupia nepalesa
NZD = dòlar neozelandès|$
OMR = rial omanita||3
PAB = balboa panameny
PEI = inti peruà|||1
PEN = nou sol peruà
PES = sol peruà|||1
PGK = kina de Papua Nova Guinea
PHP = peso filipí
PKR = rupia pakistanesa||0
PLN = zloty polonès
PLZ = zloty polonès (1950–1995)|||1
PTE = escut portuguès|||1
PYG = guaraní paraguaià|₲|0
QAR = riyal de Qatar
RHD = dòlar rhodesià|||1
ROL = antic leu romanès|||1
RON = leu romanès
RSD = dinar serbi||0
RUB = ruble rus
RUR = ruble rus (1991–1998)|р.||1
RWF = franc rwandès||0
SAR = rial saudita
SBD = dòlar de les illes Salomó|$
SCR = rupia de les Seychelles
SDD = dinar sudanès|||1
SDG = lliura sudanesa
SDP = antiga lliura sudanesa|||1
SEK = corona sueca
SGD = dòlar de Singapur|$
SHP = lliura de Santa Helena
SIT = tolar eslovè|||1
SKK = corona eslovaca|||1
SLL = leone de Sierra Leone||0
SOS = xíling somali||0
SRD = dòlar de Surinam
SRG = florí de Surinam|||1
SSP = lliura del Sudan del Sud|£
STD = dobra de São Tomé i Príncipe||0
SUR = ruble soviètic|||1
SVC = colón salvadorenc|||1
SYP = lliura síria||0
SZL = lilangeni swazi
THB = baht tailandès|฿
TJR = ruble tadjik|||1
TJS = somoni tadjik
TMM = manat turcman (1993–2009)||0|1
TMT = manat turcman
TND = dinar tunisià||3
TOP = pa‘anga tongà
TPE = escut de Timor|||1
TRL = lira turca (1922–2005)||0|1
TRY = lira turca
TTD = dòlar de Trinitat i Tobago|$
TWD = nou dòlar de Taiwan|NT$
TZS = xíling tanzà||0
UAH = hrívnia ucraïnesa|₴
UAK = karbóvanets ucraïnès|||1
UGS = xíling ugandès (1966–1987)|||1
UGX = xíling ugandès||0
USD = dòlar dels Estats Units|$
USN = dòlar dels Estats Units (dia següent)|||1
USS = dòlar dels Estats Units (mateix dia)|||1
UYI = peso uruguaià en unitats indexades||0|1
UYP = peso uruguaià (1975–1993)|||1
UYU = peso uruguaià
UZS = som uzbek||0
VEB = bolívar veneçolà (1871–2008)|||1
VEF = bolívar veneçolà
VND = dong vietnamita|₫|0
VNN = dong vietnamita (1978–1985)|||1
VUV = vatu de Vanuatu||0
WST = tala samoà
XAF = franc CFA BEAC|FCFA|0
XAG = plata|||1
XAU = or|||1
XBA = unitat compensatòria europea|||1
XBB = unitat monetària europea|||1
XBC = unitat de compte europea (XBC)|||1
XBD = unitat de compte europea (XBD)|||1
XCD = dòlar del Carib Oriental
XDR = drets especials de gir|||1
XEU = unitat de moneda europea|||1
XFO = franc or francès|||1
XFU = franc UIC francès|||1
XOF = franc CFA BCEAO||0
XPD = pal·ladi|||1
XPF = franc CFP|CFPF|0
XPT = platí|||1
XRE = fons RINET|||1
XTS = codi reservat per a proves|||1
XXX = moneda desconeguda|||1
YDD = dinar iemenita|||1
YER = rial iemenita||0
YUD = dinar fort iugoslau|||1
YUM = nou dinar iugoslau|||1
YUN = dinar convertible iugoslau|||1
YUR = dinar iugoslau reformat (1992–1993)|||1
ZAL = rand sud-africà (financer)|||1
ZAR = rand sud-africà
ZMK = kwacha zambià (1968–2012)||0|1
ZMW = kwacha zambià
ZRN = nou zaire zairès|||1
ZRZ = zaire zairès|||1
ZWD = dòlar zimbabuès (1980–2008)||0|1
ZWL = dòlar zimbabuès (2009)|||1
ZWR = dòlar zimbabuès (2008)|||1
