mostly functional grader