@Override
  @NotNull
  default List<PsiNamedElement> getNamedElements() {
    PyAstWithItem[] items = PsiTreeUtil.getChildrenOfType(this, PyAstWithItem.class);
    List<PsiNamedElement> result = new ArrayList<>();
    if (items != null) {
      for (PyAstWithItem item : items) {
        PyAstExpression targetExpression = item.getTarget();
        final List<PyAstExpression> expressions = PyUtilCore.flattenedParensAndTuples(targetExpression);
        for (PyAstExpression expression : expressions) {
          if (expression instanceof PsiNamedElement) {
            result.add((PsiNamedElement)expression);
          }
        }
      }
    }
    return result;
  }
@Override
  @NotNull
  default List<PsiNamedElement> getNamedElements()