<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _find_egg_info(ireq):
 """Find this package's .egg-info directory. Due to how sdists are designed, the .egg-info directory cannot be reliably found without running setup.py to aggregate all configurations. This function instead uses some heuristics to locate the egg-info directory that most likely represents this package. The best .egg-info directory's path is returned as a string. None is returned if no matches can be found. """

    root = ireq.setup_py_dir

    directory_iterator = _iter_egg_info_directories(root, ireq.name)
    try:
        top_egg_info = next(directory_iterator)
    except StopIteration:   # No egg-info found. Wat.
        return None
    directory_iterator = itertools.chain([top_egg_info], directory_iterator)

    # Read the sdist's PKG-INFO to determine which egg_info is best.
    pkg_info = _read_pkg_info(root)

    # PKG-INFO not readable. Just return whatever comes first, I guess.
    if pkg_info is None:
        return top_egg_info

    # Walk the sdist to find the egg-info with matching PKG-INFO.
    for directory in directory_iterator:
        egg_pkg_info = _read_pkg_info(directory)
        if egg_pkg_info == pkg_info:
            return directory

    # Nothing matches...? Use the first one we found, I guess.
    return top_egg_info