adding code for handling big decimal