#include using namespace std; const int maxn = 1e3 + 10; int dp[maxn][maxn]; int gcd(int a, int b) { if (b == 0) return a; return gcd(b, a%b); } void init() { for (int i = 1; i < maxn; i++) { for (int j = 1; j < maxn; j++) { dp[i][j] = max({dp[i][j], dp[i-1][j], dp[i][j-1]}); if (gcd(i, j) == 1) { dp[i][j]++; } } } } int main() { init(); cin.tie(0); ios_base::sync_with_stdio(false); int t; cin >> t; while (t--) { int a, b; cin >> a >> b; cout << dp[a][b] << endl; } }