removed Ctlr abstraction