docs: def EncodeMessageList(cls, message_list, packed_message_list):
      """Encode the MessageList into the packed_message_list rdfvalue."""
      # By default uncompress
      uncompressed_data = message_list.SerializeToString()
      packed_message_list.message_list = uncompressed_data
  
      compressed_data = zlib.compress(uncompressed_data)
  
      # Only compress if it buys us something.
      if len(compressed_data) < len(uncompressed_data):
        packed_message_list.compression = (
            rdf_flows.PackedMessageList.CompressionType.ZCOMPRESSION)
        packed_message_list.message_list = compressed_data