def fingerprints(data):
Hashes = namedtuple('<STR_LIT>', "<STR_LIT>")<EOL>if six.PY2:<EOL><INDENT>if not isinstance(data, str):<EOL><INDENT>data = data.encode("<STR_LIT:utf-8>")<EOL><DEDENT><DEDENT>elif six.PY3:<EOL><INDENT>if not isinstance(data, bytes):<EOL><INDENT>data = data.encode("<STR_LIT:utf-8>")<EOL><DEDENT><DEDENT>md5 = hashlib.md5()<EOL>md5.update(data)<EOL>md5 = md5.hexdigest()<EOL>sha1 = hashlib.sha1()<EOL>sha1.update(data)<EOL>sha1 = sha1.hexdigest()<EOL>sha256 = hashlib.sha256()<EOL>sha256.update(data)<EOL>sha256 = sha256.hexdigest()<EOL>sha512 = hashlib.sha512()<EOL>sha512.update(data)<EOL>sha512 = sha512.hexdigest()<EOL>return Hashes(md5, sha1, sha256, sha512)<EOL>
This function return the fingerprints of data.

Args:
    data (string): raw data

Returns:
    namedtuple: fingerprints md5, sha1, sha256, sha512