#include <bits/stdc++.h>
using namespace std;
long long Power(long long a, long long b) {
  if (b == 0) return 1;
  long long p = Power(a, b / 2);
  p = (p * p);
  if (b & 1) {
    p = (p * a);
  }
  return p;
}
long long Gcd(long long a, long long b) {
  if (b == 0) return a;
  if (a < b) return Gcd(b, a);
  return Gcd(b, a % b);
}
set<long long> st;
int sz;
void Pre() {
  for (int i = 1; i * i <= 1000000000 + 1; i++) {
    st.insert(i * i);
  }
  sz = st.size();
}
void Solve() {
  long long x;
  cin >> x;
  bool b = 0;
  long long n, m;
  for (long long i = 1; i * i < 2e9; i++) {
    if (i * i <= x) continue;
    m = i / sqrt(i * i - x) + 1e-6;
    for (long long j = max(1LL, m - 5); j <= m + 5; j++)
      if (i * i - (i / j) * (i / j) == x) {
        b = 1;
        n = i;
        m = j;
        break;
      }
    if (b) break;
  }
  if (b) {
    cout << n << ' ' << m << '\n';
  } else {
    cout << -1 << '\n';
  }
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  Pre();
  int t = 1;
  cin >> t;
  while (t--) {
    Solve();
  }
  return 0;
}
