updated client delegate method