#macro(showcats $categories) #foreach($cat in $categories) #if($cat.hasChildren()) #showcats($cat.children) #else $cat.id:$cat.getCategoryPath() #end #end #end $inputdata You're analyzing questions that are part of a multiple choice test. The question you are analyzing right now is: $question.text There are the following options: #foreach($response in $question.getResponses()) $response.text #end The correct response according is believed to be $question.getCorrectResponse().getText() Further the test consists of multiple categories in a heirarchical structure. These are represented below using / as a seperator with the highest level categories on the left and the lowest on the right. Categories: ####showcats($category.children) Your job is to call the function analyze_question and provide an opinion on whether the answer indicated is really correct or if the question should be reviewed further. You also need to select the most appropriate category and provide it in the category field in the function. The categories are written in the form: ID:CATEGORY/PATH Please provide only the text of the ID. The path represents a heirarchy of categories.