@Override
  public boolean equals(Object obj) {
    if (!(obj instanceof Money))
      return false;
    
    final Money m = (Money) obj;
    if (!isSameCurrencyAs(m))
      return false;

    return getQuantity().equals(m.getQuantity());
  }