#include using namespace std; typedef long long ll; int main() { ll a, b, T; scanf("%lld", &T); while(T--) { scanf("%lld%lld", &a, &b); ll max_, min_; if(a > b) { max_ = a; min_ = b; } else { max_ = b; min_ = a; } ll c_max = -1, c_min = -1; c_max = max_ - min_; ll k = max_ - min_; for(ll i=2; i<= ll(sqrt(k * 1.0)) + 1; i++) { if(k % i ==0) { c_min = i; break; } } if(k >= 2 && c_min == -1) { c_min = k; } if(max_ == min_ && max_ >= 2) { c_max = max_; c_min = 2; } if(c_max != -1 && c_min != -1) { printf("%lld %lld\n", c_min, c_max); } else printf("-1 -1\n"); } return 0; }