@Override
    public @NotNull LongRangeSet meet(@NotNull LongRangeSet other) {
      if (other == this) return this;
      if (other.isEmpty()) return other;
      if (other instanceof Point || other instanceof Range) {
        return other.meet(this);
      }
      return subtract(all().subtract(other));
    }
@Override
    public @NotNull LongRangeSet meet(@NotNull LongRangeSet other)