Issue #10: added three new types of message