changes by client