client code update