because grades.grade() is itself manually managed