program main
    use,intrinsic :: iso_fortran_env
    implicit none
    integer(int32)::n,i,j,x,y
    integer(int32), allocatable:: a(:)
    logical:: pc, sc
    logical,allocatable:: t(:)


    read*, n
    allocate(a(n))
    read*, a(:)
    allocate(t(maxval(a)), source=.false.)
    pc = .true.
    do i=1,n    
        do j=1,ceiling(sqrt(dble(a(i))))
            if (mod(a(i),j) == 0) then
                x = a(i)/j
                y = j
                if (t(x) .and. x > 1) pc = .false.
                if (t(y) .and. y > 1) pc = .false.
                t(x) = .true.
                t(y) = .true.
            end if
        end do
    end do

    ! x = a(1)
    ! do i=2,n
    !     x = gcd(x,a(i))
    ! end do
    sc = x == 1

    if (pc) then
        print'(a)', "pairwise coprime"
    else if (sc) then
        print'(a)', "setwise coprime"
    else
        print'(a)', "not coprime"
    end if
contains
    function lcm(x,y) result(ret)
        integer(int32):: x,y,ret
        ret=x*y/gcd(x,y)
    end function
    recursive function gcd(x,y) result(ret)
        integer(int32):: x,y,ret
    
        if (mod(x,y) == 0) then
            ret = y
            return
        end if
    
        ret = gcd(y,mod(x,y))
    end function
end program main