fix some problem

add some exception comment
decimal calculation still has bugs