modified ClientController