return a map as opposed to an array