fixed div by 0 bug