modified the client