@Override
  protected @Nullable Presentation getPresentation(@NotNull ActionContext context, @NotNull PsiElement element) {
    if (!(context.file() instanceof PyFile)) {
      return null;
    }
    final PySequenceExpression literal = findCollectionLiteralUnderElement(element);
    if (myTargetCollectionClass.isInstance(literal)) {
      return null;
    }
    if (literal != null && isAvailableForCollection(literal)) {
      if (literal instanceof PyTupleExpression) {
        if (PyTypingTypeProvider.isInsideTypeHint(literal, TypeEvalContext.codeAnalysis(context.project(), context.file()))) return null;
        return Presentation.of(PyPsiBundle.message("INTN.convert.collection.literal", "tuple", myTargetCollectionName));
      }
      else if (literal instanceof PyListLiteralExpression) {
        return Presentation.of(PyPsiBundle.message("INTN.convert.collection.literal", "list", myTargetCollectionName));
      }
      else if (literal instanceof PySetLiteralExpression) {
        return Presentation.of(PyPsiBundle.message("INTN.convert.collection.literal", "set", myTargetCollectionName));
      }
    }
    return null;
  }
@Override
  protected @Nullable Presentation getPresentation(@NotNull ActionContext context, @NotNull PsiElement element)