Tired of boring office work, Denis decided to open a fast food restaurant.

On the first day he made a portions of dumplings, b portions of cranberry juice and c pancakes with condensed milk.

The peculiarity of Denis's restaurant is the procedure of ordering food. For each visitor Denis himself chooses a set of dishes that this visitor will receive. When doing so, Denis is guided by the following rules:

  * every visitor should receive at least one dish (dumplings, cranberry juice, pancakes with condensed milk are all considered to be dishes); 
  * each visitor should receive no more than one portion of dumplings, no more than one portion of cranberry juice and no more than one pancake with condensed milk; 
  * all visitors should receive different sets of dishes. 



What is the maximum number of visitors Denis can feed?

Input

The first line contains an integer t (1 ≤ t ≤ 500) — the number of test cases to solve.

Each of the remaining t lines contains integers a, b and c (0 ≤ a, b, c ≤ 10) — the number of portions of dumplings, the number of portions of cranberry juice and the number of condensed milk pancakes Denis made.

Output

For each test case print a single integer — the maximum number of visitors Denis can feed.

Example

Input

7
1 2 1
0 0 0
9 1 7
2 2 3
2 3 2
3 2 2
4 4 4


Output

3
0
4
5
5
5
7

Note

In the first test case of the example, Denis can feed the first visitor with dumplings, give the second a portion of cranberry juice, and give the third visitor a portion of cranberry juice and a pancake with a condensed milk.

In the second test case of the example, the restaurant Denis is not very promising: he can serve no customers.

In the third test case of the example, Denise can serve four visitors. The first guest will receive a full lunch of dumplings, a portion of cranberry juice and a pancake with condensed milk. The second visitor will get only dumplings. The third guest will receive a pancake with condensed milk, and the fourth guest will receive a pancake and a portion of dumplings. Please note that Denis hasn't used all of the prepared products, but is unable to serve more visitors.
import sys

#init the maximum list of all sets
def to_binary_digits(i: int, pad: int):
    digits = list(map(int, bin(i)[2:])) #[2:] to drop the 0b prefix
    if len(digits) < pad:
        digits = [0]* (pad - len(digits)) + digits
    return digits
    

type_count = 3
all_sets = []
for k in range(1, 2 ** type_count):
    all_sets.append(to_binary_digits(k, type_count))
#print("DBG: ", all_sets)
all_options = []
set_size = len(all_sets)
for k in range(1, 2 ** set_size):
    option_min_count = [0] * type_count
    portion_count = 0
    index = to_binary_digits(k, set_size)
    #print("\tDBG: ", index)
    for i in range(set_size):
        if index[i] == 1:
            portion_count += 1
            for j in range(type_count):
                option_min_count[j] += all_sets[i][j]
    #print("\tDBG: ", portion_count)
    all_options.append([portion_count, option_min_count])
#print("DBG: ", *all_options, sep = "\n")

def check_option(option, counts):
    init_array = list(counts) # to make a hard copy
    for i in range(type_count):
        init_array[i] -= option[1][i]
    
    positive_elem_count = len(list(filter(lambda num: num >= 0, init_array)))
    return (positive_elem_count == type_count)

def find_max_set_count(counts):
    possible_counts = []
    for opt in iter(all_options):
        if check_option(opt, counts):  
            possible_counts.append(opt[0])
    if len(possible_counts) == 0:
        return 0       
    return max(possible_counts)

t = int(input())
for i in range(t):
    counts = list(map(int, sys.stdin.readline().split()))
    print(find_max_set_count(counts))
