#include using namespace std; const int MAXN=1010; int F[MAXN][MAXN]; int gcd(int a,int b) {return !b?a:gcd(b,a%b);} int main() { for (int i=1;i<=1000;++i) for (int j=1;j<=1000;++j) { int v=(gcd(i,j)==1); F[i][j]=max(F[i-1][j],F[i][j-1])+v; } int TT; cin>>TT; for (int i=1;i<=TT;++i) { int a,b; scanf("%d%d",&a,&b); printf("%d\n",F[a][b]); } return 0; }