refactoring using introduces single attribute handlers