question answer first stab, refactoring