@Override
  public @NotNull DfType fromRelation(@NotNull RelationType relationType) {
    if (relationType == RelationType.EQ) {
      DfType result = myNaN ? this : create(myFrom, myTo, myInvert, true);
      DfType zero = DfTypes.floatRange(-0.0f, 0.0f);
      return meet(zero) != BOTTOM ? result.join(zero) : result;
    }
    if (myInvert) {
      float max = myTo == Float.POSITIVE_INFINITY ? nextDown(myFrom) : Float.POSITIVE_INFINITY;
      float min = myFrom == Float.NEGATIVE_INFINITY ? nextUp(myTo) : Float.NEGATIVE_INFINITY;
      return fromRelation(relationType, min, max);
    }
    return fromRelation(relationType, myFrom, myTo);
  }
@Override
  public @NotNull DfType fromRelation(@NotNull RelationType relationType)