This should be removed in favor of `self.iter().fold(...)`