var
n,m,t,i:longint;
begin
assign(input,'rook.in'); reset(input);
readln(t);
for i:=1 to t do begin
readln(n,m);
if (n=1) and (m=1) then writeln('0') else
if (n=1) or (m=1) then writeln('1') else
if (m*n) mod 2=0 then writeln('2') else
if (m*n) mod 2<>0 then writeln('1');
end;
end.