Is it possible to save a checkpoint in the middle of a generation?