def METHOD_NAME(self, discounts, qty):
    """Return valid discount combinations given a list of discount policies."""
    valid_combos = []
    if len(discounts) < 2:
        return valid_combos
    # Get all possible valid combinations of discounts in groups of 2..n,
    # where n is the number of discounts
    for n in range(2, len(discounts) + 1):
        combos = list(itertools.combinations(discounts, n))
        for combo in combos:
            if (
                sum([discount.item_quantity_min for discount, coupon in combo])
                <= qty
            ):
                # if number of line items is gte to number of items the discount policies
                # as a combo supports, count it as a valid combo
                valid_combos.append(combo)
    return valid_combos