clean up and adding mediator
merge