refactoring: used enum instead of class for categories