class CurrencyAmount implements FxConvertible<CurrencyAmount>, Comparable<CurrencyAmount>, Serializable {

  public CurrencyAmount positive() {
    return amount < 0 ? negated() : this;
  }

  private  CurrencyAmount(Currency currency, double amount);

}