def select_icons(xmrs, left=None, relation=None, right=None):
    """
    Return the list of all [IndividualConstraints] that have the
    matching *left*, *relation*, and/or *right* values. If none
    match, return an empty list.
    """
    icmatch = lambda ic: (
        (left is None or ic.left == left) and
        (relation is None or ic.relation == relation) and
        (right is None or ic.right == right))
    return list(filter(icmatch, xmrs.icons()))