def _get_reaction_key(functional_groups):
    """
    Return a key for :data:`._reactions`

    Parameters
    ----------
    functional_groups : :class:`iterable`
        An :class:`iterable` of :class:`.GenericFunctionalGroup`.
        The correct reaction must be selected for these functional
        groups.

    Returns
    -------
    :class:`.frozenset`
        A key for :data:`_reactions`, which maps to the correct
        reaction.

    """

    return frozenset(
        functional_group.get_num_bonders()
        for functional_group in functional_groups
    )