Same functionality for the map, but broke out all the data into its own factory and the code is much more DRY