Cleaned up and documented the FailedMessage event