intermediat version of grader.js