adding controller interface