added interface for the controller