Mediator pattern done.