added client prototype