Added Amount and Amount factory impl