singleton
command pattern
Proxy added