#include <bits/stdc++.h>
using namespace std;
const int P = 1000;
const int N = 250;
const long double inf = 1e18;
int a[250];
long double lg[2 * P + 5];
long double ls[2 * P + 5];
long double pois(int k, int p) { return k == 0 ? -p : (k * lg[p] - p - ls[k]); }
long double unif(int k, int p) { return k > 2 * p ? -inf : -lg[2 * p + 1]; }
long double sum_pois(int p) {
  long double res = 0;
  for (int i = 0; i < N; ++i) res += pois(a[i], p);
  return res;
}
long double sum_unif(int p) {
  long double res = 0;
  for (int i = 0; i < N; ++i) res += unif(a[i], p);
  return res;
}
int main() {
  cin.sync_with_stdio(0);
  cout.sync_with_stdio(0);
  ls[1] = lg[1] = 0;
  for (int i = 2; i <= 2 * P + 1; ++i) {
    lg[i] = logl(i);
    ls[i] = ls[i - 1] + lg[i];
  }
  int t;
  cin >> t;
  while (t--) {
    bool pois = false;
    for (int i = 0; i < N; ++i) {
      cin >> a[i];
      if (a[i] > 2 * P) {
        pois = true;
      }
    }
    if (pois) {
      cout << "poisson\n";
      continue;
    }
    long double p_unif = -inf, p_pois = -inf;
    for (int p = 10; p <= 1000; ++p) {
      p_pois = max(p_pois, sum_pois(p));
      p_unif = max(p_unif, sum_unif(p));
    }
    if (p_pois > p_unif)
      cout << "poisson\n";
    else
      cout << "uniform\n";
  }
  return 0;
}
