fwiw, I believe
```ruby
Hash[
  map { |e| [Array(e).first, yield *e] }
]
```
is simpler and it is definitely more performant (http://hervalicio.us/post/32332064580/whats-the-best-way-to-convert-a-hash-into-another-hash)