refactoring: topic list