# Do not edit - generated from Unicode CLDR data
#
# 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

AUD = аўстралійскі даляр|AU$
BRL = бразільскі рэал|R$
BYB = BYB|Руб||1
BYR = беларускі рубель||0
CNY = кітайскі юань Renminbi|CN¥
ERN = эрытрэйская накфа|Nfk
EUR = еўра|€
GBP = англійскі фунт|UK£
INR = індыйская рупія|Rs.
JPY = японская іена|¥|0
NOK = нарвэская крона|Nkr
RUB = рускі рубель|рас. руб.
USD = долар ЗША|$
XXX = невядомая або недапушчальная валюта|||1
