@NotNull
  @Contract(pure = true)
  public static <T> ImmutableDomainObjectSet<T> emptyDomainObjectSet() {
    //noinspection unchecked
    return (ImmutableDomainObjectSet<T>)EMPTY_DOMAIN_OBJECT_SET;
  }
@NotNull
  @Contract(pure = true)
  public static <T> ImmutableDomainObjectSet<T> emptyDomainObjectSet()