Do we want to require this here, or rather in a different subclass where this dependency is introduced. Rather keep the list of things required minimal here and have them in the classes so that it will make it easier to figure out where to look to understand code.