interesting usage of step and flat_map... How does this do the offseting
```ruby
>> (0..10).step(5)
=> #<Enumerable::Enumerator:0x10221e348>
>> (0..10).step(5).flat_map {|i| i }
NoMethodError: undefined method `flat_map' for #<Enumerable::Enumerator:0x102228960>
	from (irb):8
```
??