refactoring User constructor