use bignumber for server side precision arithmetic