Messaging refactoring from V. Zurczak.