You are given a rectangular parallelepiped with sides of positive integer lengths $A$, $B$ and $C$. 

Find the number of different groups of three integers ($a$, $b$, $c$) such that $1\leq a\leq b\leq c$ and parallelepiped $A\times B\times C$ can be paved with parallelepipeds $a\times b\times c$. Note, that all small parallelepipeds have to be rotated in the same direction.

For example, parallelepiped $1\times 5\times 6$ can be divided into parallelepipeds $1\times 3\times 5$, but can not be divided into parallelepipeds $1\times 2\times 3$.
The first line contains a single integer $t$ ($1 \leq t \leq 10^5$) — the number of test cases.

Each of the next $t$ lines contains three integers $A$, $B$ and $C$ ($1 \leq A, B, C \leq 10^5$) — the sizes of the parallelepiped.
4
1 1 1
1 6 1
2 2 2
100 100 100
1
4
4
165
10
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1
1
1
1
1
1
1
1
1
1
10
9 6 8
5 5 2
8 9 2
2 7 9
6 4 10
1 1 8
2 8 1
10 6 3
7 5 2
9 5 4
41
6
21
12
39
4
7
26
8
18
1
100000 100000 100000
8436
from math import gcd


def countdivisors(n):
    cnt = 0
    for i in range(1, int(n**0.5) + 1):
        if n % i == 0:
            if n / i == i:
                cnt += 1
            else:
                cnt += 2
    return cnt


for _ in range(int(input())):
    A, B, C = map(int, input().split())
    a = countdivisors(A)
    b = countdivisors(B)
    c = countdivisors(C)
    ab = countdivisors(gcd(A, B))
    bc = countdivisors(gcd(B, C))
    ca = countdivisors(gcd(C, A))
    abc = countdivisors(gcd(ab, C))
    answer = a * b * c
    answer -= ab * bc * ca
    answer += abc * (ab * bc + bc * ca + ca * ab)
    answer -= a * bc * (bc - 1) // 2
    answer -= b * ca * (ca - 1) // 2
    answer -= c * ab * (ab - 1) // 2
    answer -= abc * (abc + 1) * (ab + bc + ca) // 2
    answer += abc * (abc + 1) * (abc + 2) // 6
    print(answer)
