implement choiceN