#include <iostream>

using namespace std;

int main()
{
    int t;
    long long a,b;
    scanf("%d",&t);
    long long mat[t][2];
    long long mat2[t][2];
    for(int i=0;i<t;i++)
    {
        scanf("%lld",&mat[i][0]);
        scanf("%lld",&mat[i][1]);
    }
    for(int i=0;i<t;i++)
    {
        a=mat[i][0];
        b=mat[i][1];
        for(long long x=1;x<=a/2;x++)
        {
            if(a%x==0)
            {
                long long y=a/x;
                long long g=x^y;
                if(g==b)
                {
                    mat2[i][0]=x;
                    mat2[i][1]=y;
                    break;
                }
                else
                    mat2[i][0]=-1;
            }
        }
    }
    for(int i=0;i<t;i++)
    {
        if(mat2[i][0]==-1)
            printf("%lld",mat2[i][0]);
        else
            printf("%lld %lld",mat2[i][0],mat2[i][1]);
        cout<<endl;
    }
}