adding safety to avoid upgrading message state