checkpoint; fill in TODO comments