Input: R A set of interval lists.
Output: G The resulting interval list.
1: for all k 2 1; n do
2: Let rk be the first interval of Rk
3: Insert lb.rk/ and ub.rk/ to min-heap H
4: a 0, b 0, c 0
5: while H ¤ ; do
6: Let t be the top element in H
7: Pop t from H
8: if t is a lower-bound then
9: c c C 1
10: if c D 1 then a t
11: if t is an upper-bound then
12: c c