surveyable refactoring