def _read_pkg_info_wheel(fp, name_version=None):
    """ Read the METADATA content in the possible locations for a wheel, and
    return the decoded content.

    If no pkg info data is found, return None.

    Parameters
    ----------
    fp : ZipFile
    name_or_version: tuple or None
        If not None, assumed to be (name, version) pair. If known,
        significantly speed up finding the metadata archive name.
    """
    if name_version is None:
        for arcname in fp.namelist():
            parts = arcname.split("/")
            if (
                len(parts) == 2
                and parts[0].endswith(".dist-info")
                and parts[1] == "METADATA"
            ):
                candidate = arcname
                break
        else:
            return None
    else:
        name, version = name_version
        dist_info = "{0}-{1}.dist-info".format(name, version)
        candidate = "{0}/METADATA".format(dist_info)

    try:
        return fp.read(candidate)
    except KeyError:
        return None