refactored question rendering