public TimeIntervals Intersect(TimeIntervals other) { using (var myIntervals = Intervals.GetEnumerator()) using (var otherIntervals = other.Intervals.GetEnumerator()) { return(FromIntervalsSorted(Intersect(myIntervals, otherIntervals))); } }