docs: def to_bytes(self):
          '''
          Create bytes from properties
          '''
          # Verify that properties make sense
          self.sanitize()
  
          # Start with the type
          bitstream = BitArray('uint:4=%d' % self.message_type)
  
          # Add the flags
          bitstream += BitArray('bool=%d' % self.is_reply)
  
          # Add reserved bits
          bitstream += self._reserved1
  
          # Add the nonce
          bitstream += BitArray(bytes=self.nonce)
  
          # Add the key-id and authentication data
          bitstream += BitArray('uint:16=%d, uint:16=%d, hex=%s'
                                % (self.key_id,
                                   len(self.authentication_data),
                                   self.authentication_data.encode('hex')))
  
          # Add the TTL
          bitstream += BitArray('uint:32=%d' % self.ttl)
  
          # Add reserved bits
          bitstream += self._reserved2
  
          # Add the EID prefix mask length
          bitstream += BitArray('uint:8=%d' % self.eid_prefix.prefixlen)
  
          # Add the EID prefix
          bitstream += get_bitstream_for_afi_address(self.eid_prefix)
  
          # Add the reply
          bitstream += get_bitstream_for_afi_address(self.reply)
  
          return bitstream.bytes