be more correct about calculating damage region