n=min(int(input()),61) a=list(map(int,input().split()))[:n] u=[0]*n for i in range(n): u[i]|=1<>y)&1: a[r],a[i]=a[i],a[r] u[r],u[i]=u[i],u[r] for j in range(n): if j!=r and (a[j]>>y)&1: a[j]^=a[r] u[j]^=u[r] r+=1 y+=1 if r>i)&1] print(len(a)) print(*a) else: print(-1)