routing and grading functional