# Do not edit - generated from Unicode CLDR data
#   main/sr_ME.xml - r4165 2009-06-09 01:36:20 -0400 (Tue, 09 Jun 2009)
#
# 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

ADP = Andorska pezeta (ADP)||0|1
AED = Ujedinjeni arapski emirati dirham
AFA = Avganistanski avgani (1927-2002) AFA|||1
AFN = Avganistanski avgani (AFN)|Af|0
ALL = Albanski lek||0
AMD = Jermenski dram||0
ANG = Holandski Antili gilder (ANG)|NAf.
AOA = Angolijska kvanza (AOA)|Kz
AOK = Angolijska kvanza (1977-1990) (AOK)|||1
AON = Angolijska nova kvanza (1990-2000) (AON)|||1
AOR = Angolijska kvanza reajustado (1995-1999) (AOR)|||1
ARA = Argentinski austral (ARA)|₳||1
ARL = ARL|$L||1
ARM = ARM|m$n||1
ARP = Argentinski pezo (1983-1985) (ARP)|||1
ARS = Argentinski pezo|AR$
ATS = Austrijski šiling|||1
AUD = Australijski dolar|AU$
AWG = Arubijski florin (AWG)|Afl.
AZM = Azerbejdžanski manat (AZM)|||1
AZN = Azerbejdžanski manat (AZN)|man.
BAD = Bosansko-Hercegovački dinar|||1
BAM = Bosansko-Hercegovačka konvertibilna marka|KM
BBD = Barbadoski dolar (BBD)|Bds$
BDT = Bangladeška taka (BDT)|Tk
BEC = Belgijski frank (konvertibilni) (BEC)
BEF = Belgijski franak|BF||1
BEL = Belgijski frank (finansijski) (BEL)
BGL = Bugarski tvrdi lev (BGL)|||1
BGN = Bugarski lev
BHD = Bahreinski dinar (BHD)|BD|3
BIF = Burundski franak (BIF)|FBu|0
BMD = Bermudski dolar (BMD)|BD$
BND = Brunejski dolar|BN$
BOB = Bolivijski boliviano|Bs
BOP = Bolivijski pezo (BOP)|$b.||1
BOV = Bolivijski mvdol (BOV)
BRB = Brazilski kruzeiro novo (1967-1986) (BRB)|||1
BRC = Brazilski kruzado (BRC)|||1
BRE = Brazilski kruzeiro (1990-1993) (BRE)|||1
BRL = Brazilski real|R$
BRN = Brazilski kruzado novo (BRN)|||1
BRR = Brazilski kruzeiro (BRR)|||1
BSD = Bahamski dolar (BSD)|BS$
BTN = Butanski ngultrum (BTN)|Nu.
BUK = Burmanski kjat (BUK)|||1
BWP = Botsvanska pula (BWP)
BYB = Beloruska nova rublja (1994-1999) (BYB)|||1
BYR = Beloruska rublja (BYR)||0
BZD = Belize dolar (BZD)|BZ$
CAD = Kanadski dolar|CA$
CDF = Kongolski franak (CDF)
CHE = WIR Evro (CHE)
CHF = Švajcarski franak|Fr.
CHW = WIR franak (CHW)
CLE = CLE|Eº||1
CLF = Čileanski unidades de fomento (CLF)||0
CLP = Čileanski pezo|CL$|0
CNY = Kineski Juan Renminbi|CN¥
COP = Kolumbijski pezo|CO$|0
COU = Unidad de Valor real (COU)
CRC = Kostarikanski kolon (CRC)|₡|0
CSD = Stari srpski dinar|||1
CSK = Čehoslovačka tvrda koruna (CSK)|||1
CUC = CUC|CUC$
CUP = Kubanski pezo (CUP)|CU$
CVE = Kejp verdanški eskudo (CVE)|CV$
CYP = Kipratska funta (CYP)|CY£||1
CZK = Češka kruna|Кч
DDM = Istočnoevropska marka (DDM)|||1
DEM = Nemačka marka|DM||1
DJF = Džibutanski franak (DJF)|Fdj|0
DKK = Danska kruna|Dkr
DOP = DOminikanski pezo (DOP)|RD$
DZD = Alžirski dinar (DZD)|DA
ECS = Ekvadorijski sukr (ECS)|||1
ECV = Ekvadorski unidad de valor konstantin (UVC)
EEK = Estonska kruna|Ekr
EGP = Egipatska funta|EG£
EQE = EQE|||1
ERN = Eritreanska nakfa (ERN)|Nfk
ESA = Španska pezeta (račun) ESA
ESB = Španska pezeta (konvertibilni račun) (ESB)
ESP = Španska pezeta|Pts|0|1
ETB = Etopijski bir (ETB)|Br
EUR = Evro|€
FIM = Finska marka|mk||1
FJD = Fidži dolar|FJ$
FKP = Foklandska ostrva funta (FKP)|FK£
FRF = Francuski franak|₣||1
GBP = Britanska funta sterlinga|£
GEK = Gruzijski kupon larit (GEK)|||1
GEL = Džordžijski lari (GEL)
GHC = Ganijski cedi (1979-2007) (GHC)|₵||1
GHS = Ganijski cedi (GHS)|GH₵
GIP = Gibraltarska funta (GIP)|GI£
GMD = Gambijski dalasi (GMD)
GNF = Gvinejski franak (GNF)|FG|0
GNS = Gvinejski sili (GNS)|||1
GQE = Evatorijalna gvineja ekvele (GQE)|||1
GRD = Drahma|₯||1
GTQ = Gvatemalski kvetzal (GTQ)
GWE = Portugalska Gvineja eskudo (GWE)|||1
GWP = Gvineja bisao pezo (GWP)
GYD = Guajanski dolar (GYD)|GY$|0
HKD = Honkonški dolar|HK$
HNL = Honduranska lempira (HNL)
HRD = Hrvatski dinar|||1
HRK = Hrvatska kuna|kn
HTG = Haitski gurd (HTG)
HUF = Mađarska forinta|Ft|0
IDR = Indonezijska rupiah|Rp|0
IEP = Irska funta|IR£||1
ILP = Izraelska funta (ILP)|I£||1
ILR = stari izraelski šekeli|||1
ILS = Izraelski šekel|₪
INR = Indijski rupi|Rs
IQD = Irački dinar (IQD)||0
IRR = Iranijski rial (IRR)||0
ISJ = stara islandska kruna|||1
ISK = Islandska kruna (ISK)|Ikr|0
ITL = Italijanska lira|IT₤|0|1
JMD = Jamajski dolar (JMD)|J$
JOD = Jordanski dinar (JOD)|JD|3
JPY = Japanski jen|¥|0
KES = Kenijski šiling|Ksh
KGS = Kirgistanski som (KGS)
KHR = Kambodžijski riel (KHR)
KMF = Komoranski franak (KMF)|CF|0
KPW = Severnokorejski von (KPW)||0
KRW = Južno-korejski Von|₩|0
KWD = Kuvajtski dinar|KD|3
KYD = Kajmanska ostrva dolar (KYD)|KY$
KZT = Kazahstanski tendž (JZT)
LAK = Laoški kip (LAK)|₭|0
LBP = Lebanska funta (LBR)|LB£|0
LKR = Šrilankanski rupi (LKR)|SLRs
LRD = Liberijski dolar (LRD)|L$
LSL = Lesotski loti (LSL)
LSM = LSM|||1
LTL = Litvanski litas|Lt
LTT = Litvanski talonas (LTT)|||1
LUC = Luksemburški konvertibilni franak (LUC)
LUF = Luksemburški franak||0|1
LUL = Luksemburški finansijski franak (LUL)
LVL = Latvijski lats (LVL)|Ls
LVR = Latvijska rublja (LVR)|||1
LYD = Libijski dinar|LD|3
MAD = Marokanski dirham
MAF = Marokanski franak (MAF)|||1
MDL = Moldovski lju (MDL)
MGA = Malagasijski ariari (MGA)||0
MGF = Malagasijski franak (MGF)||0|1
MKD = Makedonski denar
MLF = Malijanski franak (MLF)|||1
MMK = Mjanmaški kjat (MMK)||0
MNT = Mongolski tugrik (MNT)|₮|0
MOP = Makaniška pataka (MOP)|MOP$
MRO = Mauritanijska ugvija|UM|0
MTL = Malteška lira|Lm||1
MTP = Malteška funta (MTP)|MT£||1
MUR = Mauricijska ruplja (MUR)|MURs|0
MVR = Maldivijska rufija (MVR)
MWK = Malavijska kvača (MWK)
MXN = Meksički peso
MXP = Meksijski srebrno pezo (1861-1992) (MXP)|MX$||1
MXV = Meksijski unidad de inverzion (MXV)
MYR = Malezijski ringit|RM
MZE = Mozambijski eskudo (MZE)|||1
MZM = Stari mozambijski metikal (MZM)|Mt||1
MZN = Mozambijski metikal (MZN)|MTn
NAD = Nambijski dolar (NAD)|N$
NGN = Nigerijska naira (NGN)|₦
NIC = Nikaragvanška kordoba (NIC)|||1
NIO = Nikaragvanška kordoba oro|C$
NLG = Holandski gulden|fl||1
NOK = Norveška kruna|Nkr
NPR = Nepalska ruplja (NPR)|NPRs
NZD = Novozelandski dolar|NZ$
OMR = Omanski rial (OMR)||3
PAB = Panamanska balboa (PAB)|B/.
PEI = Peruvijski inti (PEI)|I/.||1
PEN = Peruanski nuevo sol|S/.
PES = Peruvijski sol (PES)|||1
PGK = Papua Nova Gvineja kina (PGK)
PHP = Filipinski peso|₱
PKR = Pakistanski rupi|PKRs|0
PLN = Poljski zlot (PLN)|зл
PLZ = Poljski zloti (1950-1995) (PLZ)|||1
PTE = Portugalski eskudo|Esc||1
PYG = Paragvajski guarni (PYG)|₲|0
QAR = Katarski rial (QAR)|QR
RHD = Rodizijski dolar (RHD)|RH$||1
ROL = Stari romanski lju (ROL)|||1
RON = Rumunski leu
RSD = Srpski dinar|din.|0
RUB = Ruska rublja
RUR = Ruska rublja (1991-1998)|||1
RWF = Ruandski franak (RWF)||0
SAR = Saudijski rijal (SAR)|SR
SBD = Solomonska ostrva dolar (SBD)|SI$
SCR = Sejšelski rupi (SCR)|SRe
SDD = STari sudanski dinar (SDD)|LSd||1
SDG = Sudanska funta (SDG)
SDP = Stara sudanska funta (SDP)|||1
SEK = Švedska kruna|Skr
SGD = Singapurski dolar|S$
SHP = Sv. Helenska funta (SHP)|SH£
SIT = Slovenski tolar|||1
SKK = Slovačka kruna|Sk||1
SLL = Sijeraleonski leone (SLL)|Le|0
SOS = Somalijski šiling (SOS)|Ssh|0
SRD = Surinamski dolar (SRD)|SR$
SRG = Surinamski gilder (SRG)|Sf||1
STD = Sao Tome i Principe dobra (STD)|Db|0
SUR = Sovjetska rublja (SUR)|||1
SVC = Salvadorski kolon (SVC)|SV₡||1
SYP = Sirijska funta (SYP)|SY£|0
SZL = Švazi lilangeni (SZL)
THB = Tai baht (THB)|฿
TJR = Tadžakistanska rublja (SYR)|||1
TJS = Tadžikistanski somoni (TJS)
TMM = Turkmenistanski manat (TMM)||0|1
TND = Tunizijski dinar (TND)|DT|3
TOP = Tongška Paʻanga (TOP)|T$
TPE = Timorški eskudo (TPE)|||1
TRL = Stara turska lira (TRL)||0|1
TRY = Turska lira|Тл
TTD = Trinidad i Tobago dolar (TTD)|TT$
TWD = Novi tajvanski dolar|NT$
TZS = Tanzijski šiling (TZS)|TSh|0
UAH = Ukrajinska hrivnja|₴
UAK = Ukrajinski karbovaneti (UAK)|||1
UGS = Ugandijski šiling (1966-1987) (UGS)|||1
UGX = Ugandijski šiling (UGX)|USh|0
USD = Američki dolar|US$
USN = SAD dolar (sledeći dan) (USN)
USS = SAD dolar (isti dan) (USS)
UYI = Urugvajski pezo en unidades indeksades (UYI)
UYP = Urugvajski pezo (1975-1993) (UYP)|||1
UYU = Urugvajski pezo (UYU)|$U
UZS = Uzbekistanski som (UZS)||0
VEB = Venecuelanski bolivar|||1
VEF = Venecuelanska bolivija fuerte (VEF)|Bs.F.
VND = Vijetnamski dong|₫|0
VUV = Vanatuški vatu (VUV)|VT|0
WST = Samoanska tala (WST)|WS$
XAF = CFA franak BEAC (XAF)|FCFA|0
XAG = Srebro (CAG)
XAU = Zlato (XAU)
XBA = Evropska kompozitna jedinica (XBA)
XBB = Evropska novčana jedinica (XBB)
XBC = Evropska jedinica računa (XBC)
XBD = Evropska jedinica računa (XBD)
XCD = Istočnokaribijski dolar (XCD)|EC$
XDR = Posebna prava (XDR)
XEU = Evropska valutna jedinica (XEU)
XFO = Francuski zlatni frank (XFO)
XFU = Francuski UIC-frank (XFU)
XOF = CFA franak BCEAO (XOF)|CFA|0
XPD = Paladijum (XPD)
XPF = CFP franak (XPF)|CFPF|0
XPT = Platina (XPT)
XRE = RINET fondovi (XRE)
XTS = Kod testirane valute (XTS)
XXX = Nepoznata ili nevažeća valuta
YDD = Jemenski dinar (YDD)|||1
YER = Jemenski rial (YER)|YR|0
YUD = Jugoslovenski tvrdi dinar (YUD)|||1
YUM = Jugoslovenski novi dinar (YUM)|||1
YUN = Jugoslovenski konvertibilni dinar (YUN)|||1
ZAL = Južnoafrički rand (finansijski) ZAL
ZAR = Južna Afrika Rand|R
ZMK = Zambijska kvača (ZMK)|ZK|0
ZRN = Zairski novi zair (ZRN)|NZ||1
ZRZ = Zairski zair (ZRZ)|||1
ZWD = Zimbabvejski dolar (ZWD)|Z$|0|1
