19
 Pass 2 (by runs)
/* Relabel each run with the name of the
    equivalence class of its label */
For each run M
   {
    label(M) <- find(label(M))
    }
}
where union and find refer to the operations of the
Union-Find data structure,  which keeps track of sets
of equivalent labels.