Implementing the proxy pattern