updated hessian mod alg