#遅めの解法(O(T log_2(lfloor log_2 (max {2,N}) rfloor !))解)チェック #Pythonでは通らない def g(n): f=[0]*60 d=0 m=n while m!=0: if m%2==1:f[g(d)]=1 d+=1 m>>=1 a=0 while f[a]==1:a+=1 return a i=input N=range(int(i())) e=1 a=0 A=i().split() for n in N: B=int(A[n]) if B<0:e=1-e else:a^=g(B) print(2 if e==1 and a==0 else 1)