static LongRange intersectLongRanges(LongRange a, LongRange b) { long min = max(a.min, b.min); long max = min(a.max, b.max); ret min <= max ? LongRange(min, max) : null; }