@NotNull
  @Override
  public List<? extends RatedResolveResult> resolveMember(@NotNull String name,
                                                          @Nullable PyExpression location,
                                                          @NotNull AccessDirection direction,
                                                          @NotNull PyResolveContext resolveContext,
                                                          boolean inherited) {
    final List<RatedResolveResult> globalResult = new ArrayList<>();

    // Delegate calls to classes, we mimic but filter if filter is set.
    for (PyClassLikeType typeToMimic : myTypesToMimic) {
      final List<? extends RatedResolveResult> results = typeToMimic.resolveMember(name, location, direction, resolveContext, inherited);

      if (results != null) {
        globalResult.addAll(Collections2.filter(results, new ResolveFilter()));
      }
    }
    return globalResult;
  }
@NotNull
  @Override
  public List<? extends RatedResolveResult> resolveMember(@NotNull String name,
                                                          @Nullable PyExpression location,
                                                          @NotNull AccessDirection direction,
                                                          @NotNull PyResolveContext resolveContext,
                                                          boolean inherited)