refactoring mapping user