static TimeRange joinTimeRanges(TimeRange a, TimeRange b) { if (a == null) ret b; if (b == null) ret a; ret TimeRange(min(a.start, b.start), max(a.end, b.end)); }