We have N integers. The i-th number is A_i.

\\{A_i\\} is said to be pairwise coprime when GCD(A_i,A_j)=1 holds for every pair (i, j) such that 1\leq i < j \leq N.

\\{A_i\\} is said to be setwise coprime when \\{A_i\\} is not pairwise coprime but GCD(A_1,\ldots,A_N)=1.

Determine if \\{A_i\\} is pairwise coprime, setwise coprime, or neither.

Here, GCD(\ldots) denotes greatest common divisor.

Constraints

* 2 \leq N \leq 10^6
* 1 \leq A_i\leq 10^6

Input

Input is given from Standard Input in the following format:


N
A_1 \ldots A_N


Output

If \\{A_i\\} is pairwise coprime, print `pairwise coprime`; if \\{A_i\\} is setwise coprime, print `setwise coprime`; if neither, print `not coprime`.

Examples

Input

3
3 4 5


Output

pairwise coprime


Input

3
6 10 15


Output

setwise coprime


Input

3
6 10 16


Output

not coprime
#include <cstdio>
 
const int N = 1e6 + 5;
const int SQRT_NUM = 1000 + 5; // sqrt{max a_i}

int n;

int cnt[N];
 
int gcd(int x, int y) { return x % y == 0 ? y : gcd(y, x % y); }
 
int main() {
	std::scanf("%d", &n);
	int gcd_all = 0;
	for(int i = 1; i <= n; i++) {
		int x;
		std::scanf("%d", &x);
		cnt[x]++;
		gcd_all = gcd(gcd_all, x);
	}
	if(gcd_all != 1) { std::puts("not coprime"); return 0; }
	for(int i = 2; i < N; i++) {
		int tot = 0;
		for(int j = i; j < N; j += i) tot += cnt[j];
		if(tot > 1) { std::printf("setwise coprime"); return 0; }
	}
	std::puts("pairwise coprime");
	return 0;
}