# 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:
#  cldrVersion=21.0
#  number=$Revision: 6444 $
#  type=root
#  date=$Date: 2012-01-25 16:40:58 -0500 (Wed, 25 Jan 2012) $

ADP = Πεσέτα Ἀνδόρας||0|1
AED = Ντιρὰμ Ἡνωμένων Ἀραβικῶν Ἐμιράτων
ALL = Λὲκ Ἀλβανίας||0
AMD = Dram Ἀρμενίας||0
ANG = Γκίλντα Ὁλλανδικῶν Ἀντιλλῶν
AOA = Kwanza Ἀνγκόλας
AOK = Kwanza Ἀνγκόλας (1977-1990)|||1
AON = Νέα Kwanza Ἀνγκόλας (1990-2000)|||1
AOR = Kwanza Reajustado Ἀνγκόλας (1995-1999)|||1
ARA = Austral Ἀργεντινῆς|||1
ARP = Πέσο Ἀργεντινῆς (1983-1985)|||1
ARS = Πέσο Ἀργεντινῆς
ATS = Σελίνι Αὐστρίας|||1
AUD = Δολάριο Αὐστραλίας|AU$
AWG = Γκίλντα Ἀρούμπα
AZM = Μανὰτ Ἀζερμπαϊτζάν|||1
BAD = Δηνάριο Βοσνίας-Ἑρζεγοβίνης|||1
BAM = Μάρκο Βοσνίας-Ἑρζεγοβίνης
BEL = Φράγκο Βελγίου (οἰκονομικό)|||1
BGL = Μεταλλικὸ Λὲβ Βουλγαρίας|||1
BGN = Νέο Λὲβ Βουλγαρίας
CAD = Δολάριο Καναδᾶ|CA$
CHF = Φράγκο Ἑλβετίας||||5
CLF = Unidades de Fomento Χιλῆς||0|1
CLP = Πέσο Χιλῆς||0
CSK = Σκληρὴ Κορόνα Τσεχοσλοβακίας|||1
CVE = Ἐσκούδο Πράσινου Ἀκρωτηρίου
DDM = Ostmark Ἀνατολικῆς Γερμανίας|||1
DZD = Δηνάριο Ἀλγερίας
ECS = Sucre Ἰσημερινοῦ|||1
ECV = Unidad de Valor Constante (UVC) Ἰσημερινοῦ|||1
EEK = Κορόνα Ἐστονίας|||1
EGP = Λίρα Αἰγύπτου
ERN = Nakfa Ἐρυθραίας
ESP = Πεσέτα Ἱσπανίας||0|1
ETB = Birr Αἰθιοπίας
EUR = Εὐρώ|€
FKP = Λίρα Νήσων Φώλκλαντ
GMD = Dalasi Γκάμπιας
GQE = Ekwele Guineana Ἰσημερινῆς Γουινέας|||1
GTQ = Quetzal Γουατεμάλας
GWE = Γκινέα Ἐσκούδο Πορτογαλίας|||1
HKD = Δολάριο Χὸνγκ Κόνγκ|HK$
HTG = Gourde Ἁϊτῆς
HUF = Φιορίνι Οὑγγαρίας||0
IDR = Ρούπια Ἰνδονησίας||0
IEP = Λίρα Ἰρλανδίας|||1
ILP = Λίρα Ἰσραήλ|||1
ILS = Νέο Sheqel Ἰσραήλ|₪
INR = Ρούπια Ἰνδίας|Rs.
IQD = Δηνάριο Ἰράκ||0
IRR = Rial Ἰράκ||0
ISK = Κορόνα Ἰσλανδίας||0
ITL = Λιρέτα Ἰταλίας||0|1
JOD = Δηνάριο Ἰορδανίας||3
JPY = Γιὲν Ἰαπωνίας|JP¥|0
LKR = Ρούπια Σρὶ Λάνκας
MOP = Pataca Μακάου
MXN = Πέσο Μεξικοῦ|MX$
MXP = Ἀσημένιο Πέσο Μεξικοῦ (1861-1992)|||1
MXV = Unidad de Inversion (UDI) Μεξικοῦ|||1
MZE = Ἐσκούδο Μοζαμβίκης|||1
NAD = Δολάριο Ναμίμπιας
NIO = Χρυσὴ Κόρδοβα Νικαράγουας
NLG = Γκίλντα Ὁλλανδίας|||1
PAB = Μπαλμπόα Παναμᾶ
PGK = Kina Παπούα Νέα Γουινέας
PTE = Ἐσκούδο Πορτογαλίας|||1
PYG = Γκουαρανὶ Παραγουάης||0
SBD = Δολάριο Νήσων Σολομῶντος
SCR = Ρούπια Σεϋχελῶν
SHP = Λίρα Ἀγίας Ἑλένης
SUR = Σοβιετικὸ Ρούβλι|||1
SVC = Colon Ἒλ Σαλβαδόρ|||1
SZL = Lilangeni Ζουαζιλάνδης
THB = Μπὰτ Ταϊλάνδης|฿
TMM = Μανὰτ Τουρκμενιστάν||0|1
TPE = Ἐσκούδο Τιμόρ|||1
TTD = Δολάριο Τρινιδὰδ καὶ Τομπάγκο
UAH = Hryvnia Οὐκρανίας
UAK = Karbovanetz Οὐκρανίας|||1
UGS = Σελίνι Οὐγκάντας (1966-1987)|||1
UGX = Σελίνι Οὐγκάντας||0
USN = Δολάριο ΗΠΑ (Ἑπόμενη ἡμέρα)|||1
USS = Δολάριο ΗΠΑ (Ἴδια ἡμέρα)|||1
UYP = Πέσο Οὐρουγουάης (1975-1993)|||1
UYU = Πέσο Uruguayo Οὐρουγουάης
UZS = Sum Οὐζμπεκιστάν||0
VEB = Μπολιβὰλ Βενεζουέλας|||1
WST = Tala Δυτικῆς Σαμόας
XBA = Εὐρωπαϊκὴ Σύνθετη Μονάδα|||1
XBB = Εὐρωπαϊκὴ Νομισματικὴ Μονάδα|||1
XBC = Εὐρωπαϊκὴ Μονάδα Λογαριασμοῦ (XBC)|||1
XBD = Εὐρωπαϊκὴ Μονάδα Λογαριασμοῦ (XBD)|||1
XCD = Δολάριο Ἀνατολικῆς Καραϊβικῆς|EC$
XDR = Εἰδικὰ Δικαιώματα Ἀνάληψης|||1
XEU = Εὐρωπαϊκὴ Συναλλαγματικὴ Μονάδα|||1
XFO = Χρυσὸ Φράγκο Γαλλίας|||1
YDD = Δηνάριο Ὑεμένης|||1
YER = Rial Ὑεμένης||0
YUD = Μεταλλικὸ Δηνάριο Γιουγκοσλαβίας|||1
ZAL = Ραντ Νότιας Ἀφρικῆς (οἰκονομικό)|||1
ZAR = Ρὰντ Νότιας Ἀφρικῆς
