added base class for controller