seperated concerns and pulled a loop out into a Utility function for better testability
forgot to commit the dummy data
replaced A LOT of repeated code with a call to a new Utility method