newquestion implementation