Introduced Currency.
Refactored to remove code duplication.