client side updates