added delegateMessageHandler