Added Adapter, Proxy and FacadePattern