@Nullable
  public PyType exclude(@Nullable PyType type, @NotNull TypeEvalContext context) {
    if (type == null) return excludeNull();

    final List<PyType> members = new ArrayList<>();
    for (PyType m : getMembers()) {
      if (!PyTypeChecker.match(type, m, context)) {
        members.add(m);
      }
    }
    return union(members);
  }
@Nullable
  public PyType exclude(@Nullable PyType type, @NotNull TypeEvalContext context)