We consider the problem of maintaining, under insertions and deletions, the union of a set S of intervals on a line. We present a scheme that reports the ordered list of intervals in the union in Θ(k) time, while achieving O(logn) time in worst case for each insertion or deletion, where n is the number of intervals currently in S and k is the number of disjoint intervals in the union. The scheme uses 0(n) space. This is an improvement upon a previous approach  which uses O(log2 n) time for each insertion or deletion. One of the applications of our scheme is an optimal contour algorithm for iso-oriented rectangles that is simpler and more practical than a previous optimal algorithm .