第一行一个数T表示询问组数
之后t行每一行四个数a,b,c,d,意义见题目描述
一个整数表示所有答案的异或和。
其中dot(A,B)表示向量A和向量B的点积,cross表示向量A和向量B的叉积。
满足 dot(A,B)=1, cross(A,B)=0 的向量 A, B 有四对:A=(1,0), B=(1,0); A=(-1,0), B=(-1,0); A=(0,1), B=(0, 1); A=(0,-1), B=(0,-1)
满足 dot(A,B)=1, cross(A,B)=1 的向量 A, B 有八对:A=(1,-1), B=(1,0); A=(1,0), B=(1,1); A=(1,1), B=(0,1); A=(0,1), B=(-1, 1); A=(0,-1), B=(1,-1); A=(-1,1), B=(-1,0); A=(-1,0), B=(-1,-1); A=(-1,-1), B=(0,-1)
所以两组询问的答案分别是 8 和 12, 输出8^12=4(^表示异或)
T<=1e5
|a|,|b|,|c|,|d|<=1000
保证不存在无穷解的情况