There are N empty boxes arranged in a row from left to right. The integer i is written on the i-th box from the left (1 \leq i \leq N).  For each of these boxes, Snuke can choose either to put a ball in it or to put nothing in it.  We say a set of choices to put a ball or not in the boxes is good when the following condition is satisfied:    * For every integer i between 1 and N (inclusive), the total number of balls contained in the boxes with multiples of i written on them is congruent to a_i modulo 2.  Does there exist a good set of choices? If the answer is yes, find one good set of choices.
N=int(input())
A=[0]+[int(_) for _ in input().split()]
ans=[]
for i in range(N,0,-1):
    bai=N//i
    print(i,sum(A[i*b] for b in range(2,bai+1)))
    if A[i]!=sum(A[i*b] for b in range(2,bai+1))%2:
        ans+=[i]
print(len(ans))
print(*ans[::-1],sep=' ')
N=int(input())
A=[0]+[int(_) for _ in input().split()]
ans=[0]*(N+1)
result=[]
for i in range(N,0,-1):
    bai=N//i
    if A[i]!=sum(ans[i*b] for b in range(2,bai+1))%2:
        ans[i]=1
        result+=[i]
print(len(result))
print(*result)