part of Implement for messages