internal checkpoints