better client update