docs: def encode(encoding, data):
      """
      Encodes the given data using the encoding that is specified
  
      :param str encoding: encoding to use, should be one of the supported encoding
      :param data: data to encode
      :type data: str or bytes
      :return: multibase encoded data
      :rtype: bytes
      :raises ValueError: if the encoding is not supported
      """
      data = ensure_bytes(data, 'utf8')
      try:
          return ENCODINGS_LOOKUP[encoding].code + ENCODINGS_LOOKUP[encoding].converter.encode(data)
      except KeyError:
          raise ValueError('Encoding {} not supported.'.format(encoding))