Does this set a global mask value based on individual messages? What happens if the mask changes while we're processing a message?