public bool IsBetween(LimitBase b) => Lower.IsBetween(b.Lower, b.Upper) && Upper.IsBetween(b.Lower, b.Upper);
public bool PartiallyOverlaps(LimitBase b) => Lower.IsBetween(b.Lower, b.Upper) || Upper.IsBetween(b.Lower, b.Upper);