refactor grading controllers