implement new category handling