checkpointing following refactor