refactoring Person