Perhaps using `reduce` instead of `map` and then `(into {})` ?