def call_entrypoint(distribution, group, name, *args, **kwargs):
    """If an entrypoint is callable, use this API to both identify the entry
    point, evaluate them by loading and calling it. Return the result from the
    called function. Note that the entrypoint must be uniquely identified
    using, ``distribution``, ``group`` and ``name``. ``args`` and ``kwargs``
    will be passed on to the entypoint callable.
    """
    ep = distribution.get_entry_info(group, name)
    return ep.load()(*args, **kwargs) if ep else None
