added using BigDecimal and double