Improvement to message passing