update run implementation