class Money extends Magnitude<Money> {

    public Money subtract(final Money money) {
        assertSameCurrency(money);
        return newMoney(amount - money.amount);
    }

    public  Money(final double amount, final String currency);
    public  Money(final long amount, final String currency);

}