slightly compacted
more functional
checkpoint