Updated the implementation of Checkpoint
Adding the checkpoint implementation back