Use Decimals instead of floats (eliminate float round-off errors at the cost of speed)