controller renamed to mediator