fun exchange(currency: ObservableValue<Currency>, exchangeRate: ObservableValue<ExchangeRate>): ObservableValue<Pair<Currency, (Amount<Currency>) -> Long>>