refactor Categories