1. singleton, mediator, observer, proxy