updated to run at convergence