Clients should be able to override client class.