for checkpoint 2