var
n,a,b,i:longint;
function gcd(a,b:longint):longint;
begin
if a=0 then exit(b);
if b=0 then exit(a);
if (a and 1=0) and (b and 1=0) then exit(gcd(a shr 1,b shr 1) shl 1);
if (a and 1=0) then exit(gcd(a shr 1,b));
if (b and 1=0) then exit(gcd(a,b shr 1));
if (a and 1=1) and (b and 1=1) then exit(gcd(
abs(a-b) shr 1,a));{一定要加abs,否则会很惨,(-1)shr 1 是一个很大的数}
end;
begin
read(n);
for i:=1 to n do
begin
read(a,b);
writeln(gcd(a,b));
end;
end.