refactoring add properties