#include <bits/stdc++.h>
using namespace std;
int t, x, sol1, sol2;
void desc(int x) {
  for (int i = 1; i * i < x; i++) {
    if (x % i == 0) {
      int u = i;
      int v = x / i;
      if ((u + v) % 2 != 0) continue;
      int m = (u + v) / 2;
      int n = m / (m - u);
      if (m / n != (m - u)) continue;
      if (m > 0 && n > 0) {
        sol1 = m;
        sol2 = n;
      }
    }
  }
}
int main() {
  cin >> t;
  for (int i = 1; i <= t; i++) {
    cin >> x;
    if (x == 0) {
      cout << 1 << " " << 1 << '\n';
      continue;
    }
    if (x == 1) {
      cout << -1 << '\n';
      continue;
    }
    sol1 = sol2 = 0;
    desc(x);
    if (sol1 && sol2)
      cout << sol1 << " " << sol2 << '\n';
    else
      cout << -1 << '\n';
  }
  return 0;
}
