Extract Method
Replaced common code with calls to self.collect_descendants