setperson refactor