Refactored person generation