this is giving wrong answer...try BigDecimal or something.
some precision issue.