import numpy as np
n=int(input())
a=list(map(int, input().split()))
frag=False
#O(N^2) MAX(N): 10^5: WORST==10_000_000_000

l=np.array([],dtype=np.uint32)
xor=np.array([],dtype=np.uint32)
for j in range(n):
    l=np.append(l,a[j%n])
    if j > 0:
        xor=np.append(xor,np.bitwise_xor(l[j],l[j-1]))
        if j == n-1: 
            xor=np.append(xor,np.bitwise_xor(l[0],l[-1]))
xor = np.roll(xor, -1)
if np.all(l==xor): 
    frag=True
#print(l,xor)
print("Yes" if frag else "No")