state and checkpoints are strings