mediator and observer