no need to create an interface