tag managing, refactoring