extend Enumerable