update client functionality