refactored survey completion