added category base functionality