This is a really great idea to refactor all of this into a common method