#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; #define fi first #define se second #define mp make_pair #define rep(i, n) for(int i=0;i=0;--i) const int inf=1e9+7; const ll mod=1e9+7; const ll big=1e18; const double PI=2*asin(1); int main() { int T; cin>>T; ll A, P; for(int j=0;j>A>>P; bool prime = true; if(P==1) prime = false; for(ll i=2;i*i<=P;++i) { if(P%i==0) prime = false; } if(!prime) { cout<<-1<0) { tmp = A; two = 1; while(2*two