N=int(input()) B=[-1]+list(map(int,input().split())) ans=[-1 for _ in range(len(bin(N)[2:]))] for i in range(1,N+1): if B[i]>i:exit(print(-1)) for j in range(len(bin(i)[2:])): if i>>j&1: if ans[j]==-1:ans[j]=B[i]>>j elif B[i]>>j&1!=ans[j]:exit(print(-1)) else: if B[i]>>j&1:exit(print(-1)) for i in range(len(ans)): if ans[i]==-1:ans[i]=0 ans=int("".join(map(str,ans[::-1])),2) if ans==0:print(2**(len(bin(N)[2:]))) else:print(ans)