subst simple
preservation
progress