class Money extends Magnitude<Money> {

    @Override
    public boolean isEqualTo(final Money magnitude) {
        if (!hasSameCurrency(magnitude)) {
            throw new IllegalArgumentException("Parameter must be of type Money and have the same currency");
        }
        return (magnitude).amount == amount;
    }

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

}