# https://yukicoder.me/problems/no/3249 MOD = 10 ** 9 + 7 def main(): N = int(input()) B = list(map(int, input().split())) n = N k = 0 while n > 0: k += 1 n //= 2 candidate = 0 for i in range(k): b = B[(1 << i) - 1] o = 1 if b & (1 << i) > 0 else 0 candidate += o * (1 << i) for i in range(N): if B[i] != ((i + 1) & candidate): print(-1) return if candidate == 0: print(-1) else: print(candidate) if __name__ == "__main__": main()