partially finished categories implementation