# 条件に合う帽子が複数ある場合を考慮する
def cehck_hats(hat_1, hat_2, hats):
    # hats の中身が空っぽ -> 全てのラクダに乗せた場合、最初のラクダチェックをして結果を見る
    if len(hats) == 0:
        if hat_2 ^ rakuda_2 == rakuda_1:
            print('Yes')
            sys.exit()
        else:
            return None

    # まだ全部置いてない
    for hi in range(0, len(hats)):
        hat_3 = hats[hi]
        if hat_1 ^ hat_3 == hat_2: # 条件を満たすハットが見つかれば
            if hi == len(hats) - 1:
                cehck_hats(hat_2, hat_3, hats[1:hi])
            else:
                cehck_hats(hat_2, hat_3, hats[1:hi] + hats[hi + 1:])

n = int(input())
rakuda = [0]*n
hats = list(map(int, input().split()))

# 最初の一頭へ、aiのハットをかぶせる
rakuda_1 = hats[0]

# # 次のラクダへ、何かを乗せる
for hi in range(1, n):
    rakuda_2 = hats[hi]
    
    if hi == n - 1:
        cehck_hats(rakuda_1, rakuda_2, hats[1:hi])
    else:
        cehck_hats(rakuda_1, rakuda_2, hats[1:hi] + hats[hi + 1:])
    
# どの組み合わせもダメだった場合
print('No')
sys.exit()