add CandidateCategory class