refactored RegularGradeStrategy to use switch