def __init__(self, prompt: str = "", choices: list = None, choices_id: list = None, bullet: str = "●",
                 bullet_color: str = colors.foreground["default"], word_color: str = colors.foreground["default"],
                 word_on_switch: str = colors.REVERSE, background_color: str = colors.background["default"],
                 background_on_switch: str = colors.REVERSE, pad_right=0, indent: int = 0, align=0, margin: int = 0,
                 shift: int = 0, required: bool = False):
        if choices is None:
            choices = []
        if choices_id is None:
            choices_id = []
        prompt += "\n" + _(
            "[ =: Shift up; -: Shift down; Backspace: Remove ]"
        )
        choices.extend((
            _("+ Add"),
            _("✓ Submit")
        ))
        super().__init__(prompt, choices, bullet, bullet_color, word_color, word_on_switch, background_color,
                         background_on_switch, pad_right, indent, align, margin, shift)
        self.choices_id = choices_id
        self.choices_id.extend((
            "add",
            "submit"
        ))
        self._key_handler: Dict[int, Callable] = self._key_handler.copy()
        self._key_handler[NEWLINE_KEY] = self.__class__.accept_fork
        self.required = required