#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxm=1e6+5;
int a[maxm];
int n;
signed main(){
    ios::sync_with_stdio(0);
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    map<int,int>mark;
    for(int i=1;i<=n;i++){
        int x=a[i];
        for(int j=2;j*j<=x;j++){
            if(x%j==0){
                mark[j]++;
                while(x%j==0)x/=j;
            }
        }
        if(x!=1){
            mark[x]++;
        }
    }
    for(auto i:mark){
        if(i.second>=2){
            cout<<"pairwise coprime"<<endl;
            return 0;
        }
    }
    int g=0;
    for(int i=1;i<=n;i++){
        g=__gcd(g,a[i]);
    }
    if(g==1){
        cout<<"setwise coprime"<<endl;
    }else{
        cout<<"not coprime"<<endl;
    }
    return 0;
}
/*
1.称序列a"pairwise coprime"，当且仅当a中的数两两互质。
2.称序列a"setwise coprime"，
当且仅当a不为"pairwise coprime"，但是整个序列的gcd为1。
3.其他情况为"not coprime".

给定长度为n的序列a，要求判断该序列是上面哪种情况.

数据范围：n<=1e6，a(i)<=1e6

如果不是情况1,那么一定存在两个数,他们有公共质因子,
那么统计每个数质因子出现的情况,如果存在质因子出现两个以上,
那么就不是情况1,否则一定是情况1.

情况2直接gcd一遍看看是否为1即可.

如果不是情况1和2那就是3咯.
*/
