@Override
  protected @Nullable Presentation getPresentation(@NotNull ActionContext context, @NotNull PsiExpressionStatement expressionStatement) {
    boolean valid = expressionStatement.getParent() instanceof PsiCodeBlock &&
                    !(expressionStatement.getExpression() instanceof PsiAssignmentExpression) &&
                    !(expressionStatement.getExpression() instanceof PsiLiteralExpression) &&
                    PsiTreeUtil.findChildOfType(expressionStatement.getExpression(), PsiErrorElement.class) == null &&
                    isValidTypeForSwitch(expressionStatement.getExpression().getType(), expressionStatement);
    return valid ? Presentation.of(getFamilyName()).withPriority(PriorityAction.Priority.LOW) : null;
  }
@Override
  protected @Nullable Presentation getPresentation(@NotNull ActionContext context, @NotNull PsiExpressionStatement expressionStatement)