add checkpoint cycle