Lecture 5: much better union runtime, path compression