pulled out u[iter - 1] for further development