private static void collectInstanceAttributes(@NotNull PyFunction method,
                                                @NotNull final Map<String, PyTargetExpression> result,
                                                @NotNull Set<String> namesToSkip,
                                                @NotNull Map<String, ScopeOwner> scopesToSkip) {
    final PyParameter[] params = method.getParameterList().getParameters();
    if (params.length == 0) {
      return;
    }
    for (PyTargetExpression target : getTargetExpressions(method)) {
      String name = target.getName();
      if (!namesToSkip.contains(name) &&
          scopesToSkip.get(name) != method &&
          PyUtil.isInstanceAttribute(target)) {
        result.put(name, target);
      }
    }
  }
private static void collectInstanceAttributes(@NotNull PyFunction method,
                                                @NotNull final Map<String, PyTargetExpression> result,
                                                @NotNull Set<String> namesToSkip,
                                                @NotNull Map<String, ScopeOwner> scopesToSkip)