Updated to BigDecimal

since it has better computations than float.