#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int INF = 1001001001;
const ll mod = 1000000007;
const int MAX = 1000100;
bool Is_prime[MAX];
int MinFactor[MAX];
void Sieve(int n = MAX) {
  for (int i = 0; i < n; ++i) Is_prime[i] = true, MinFactor[i] = -1;
  Is_prime[0] = false;
  Is_prime[1] = false;
  MinFactor[0] = 0;
  MinFactor[1] = 1;
  for (int i = 2; i * i < n; ++i) {
    if (Is_prime[i]) {
      MinFactor[i] = i;
      for (int j = i * i; j < n; j += i) {
        Is_prime[j] = false;
        if (MinFactor[j] == -1) MinFactor[j] = i;
      }
    }
  }
}
vector<pair<int, int>> prime_factor(int n) {
  vector<pair<int, int>> res;
  while (n != 1) {
    int prime = MinFactor[n];
    int exp = 0;
    while (MinFactor[n] == prime) {
      ++exp;
      n /= prime;
    }
    res.push_back(make_pair(prime, exp));
  }
  return res;
}
int gcd(int a, int b) { return (b == 0 ? a : gcd(b, a % b)); }
int main() {
  int n;
  cin >> n;
  Sieve();
  vector<int> a(n);
  for (int i = 0; i < n; i++) cin >> a[i];
  int full = a[0];
  for (int i = 1; i < n; i++) {
    full = gcd(a[i], full);
  }
  set<int> st;
  bool one = true;
  for (int i = 0; i < n; i++) {
    auto pf = prime_factor(a[i]);
    for (auto k : pf) {
      if (st.count(k.first)) {
        one = false;
        break;
      }
      st.insert(k.first);
    }
    if (!one) break;
  }
  if (one)
    cout << "pairwise coprime" << endl;
  else if (full == 1)
    cout << "setwise coprime" << endl;
  else
    cout << "not coprime" << endl;
}
