#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll x, z;
int gcd(ll X, ll Y) {
if (Y == 0) return X;
if (X == 0) return Y;
return gcd(Y, X % Y);
}
ll T;
void Func() {
z /= x;
ll GCD = gcd(x * x, z);
ll Sqrt = sqrtl(GCD);
if (Sqrt * Sqrt != GCD) std::cout << "-1\n";
else std::cout << z / Sqrt << '\n';
}
int main() {
freopen("math.in", "r", stdin);
freopen("math.out", "w", stdout);
cin >> T;
for (int i = 0; i < T; i++) {
cin >> x >> z;
if (z % x != 0) {
std::cout << "-1\n";
continue;
}
Func();
}
return 0;
}
rt
能调一调吗