private async Task <CardSetting> PrepareInputSetting(DialogContext dc, InputState state,
                                                             CancellationToken cancellationToken)
        {
            var cardSetting = new CardSetting
            {
                ChoiceList = Choices?.TryGetValue(dc.State).Value
            };

            var actionName = ActionName?.TryGetValue(dc.State).Value;

            if (string.IsNullOrEmpty(actionName))
            {
                actionName = "Submit";
            }

            cardSetting.ActionName      = actionName;
            cardSetting.OrientationType = OrientationType.GetValue(dc.State);
            cardSetting.Title           = await GetPromptText(dc, state, cancellationToken);

            return(cardSetting);
        }