程序设计能力实训 ——热身赛

D. 花狮的等式

单点时限: 1.0 sec

内存限制: 512 MB

花狮想自己设定一个恒等式。花狮一开始获得了三个正整数 $a, b, c$。花狮说,我要让 $a$ $OR$ $b$ = $c$ 这个等式成立,但是花狮发现并不是任意三个整数 $a,b,c$ 都能让这个等式成立。于是花狮又设定了一种操作,花狮说他可以对$a$和$b$的二进制表示进行位翻转操作来使这个等式成立。位翻转操作是指将一个数的二进制表示任何单个位上的$1$变成$0$或$0$变成$1$。
花狮想知道最少使用多少次位翻转操作就能使这个等式成立。

示例:
$a=2,b=6,c=5.$
需要将$a(0010)$操作两次变为$(0001)$,$b(0110)$操作一次变为$(0100)$。

在这里要使得$a$ $OR$ $b$ = $c$至少需要对$a$进行两次位翻转操作和$b$进行一次位翻转操作,所以最后输出结果为$3$。

输入格式

输入的第一行表示组数$T$,表示有$T$组数据,$(1 \le T\le10000)$。
接下来有n行,每行有3个数字,分别是$a$, $b$, $c$。($1 \le a,b,c \le 1,000,000,000$),题目含义如体面所述。

输出格式

对于每一组数据输出一个数字,表示答案。

样例

Input
1
2 6 5
Output
3
Input
1
4 2 7
Output
1