added client interface