#include <bits/stdc++.h>
using namespace std;
double pi = acos(-1);
long long cei(long long x, long long y) {
  long long ans = x / y;
  if (x % y != 0) ans++;
  return ans;
}
long long gcd(long long x, long long y) { return y ? gcd(y, x % y) : x; }
long long lcm(long long x, long long y) { return x / gcd(x, y) * y; }
long long llpow(long long x, long long n) {
  long long i, ans = 1;
  for ((i) = (0); (i) < (n); (i)++) ans *= x;
  return ans;
}
long long fact(long long x) {
  long long i, ans = 1;
  for ((i) = (0); (i) < (x); (i)++) ans *= (x - i);
  return ans;
}
long long ncr(long long n, long long r) {
  return fact(n) / fact(r) / fact(n - r);
}
long long npr(long long n, long long r) { return fact(n) / fact(n - r); }
bool prime(long long a) {
  if (a <= 1) return false;
  long long i;
  for (i = 2; i * i <= a; i++) {
    if (a % i == 0) return false;
  }
  return true;
}
long long fib(long long x) {
  long long i, fibo[x + 10];
  fibo[0] = 1;
  fibo[1] = 1;
  fibo[2] = 1;
  for ((i) = (3); (i) < (x + 1); (i)++) fibo[i] = fibo[i - 1] + fibo[i - 2];
  return fibo[x];
}
long long dig(long long n) {
  long long d = 0, i = 0;
  while (n / 10 > 0) {
    i++;
    d++;
  }
  return d;
}
long long i, j;
long long ans = 0;
int main() {
  long long n;
  cin >> n;
  long long xo;
  long long a[n + 10];
  cin >> xo;
  for ((i) = (1); (i) < (n); (i)++) {
    cin >> a[i];
    xo ^= a[i];
  }
  if (xo != 0) {
    puts("No");
    return 0;
  }
  long long k;
  bool flag = false;
  for (i = 1; i < n && !flag; ++i) {
    for ((j) = (i + 1); (j) < (n); (j)++) {
      if (a[0] ^ a[i] == a[j]) {
        k = a[i];
        a[i] = a[1];
        a[1] = k;
        k = a[j];
        a[j] = a[2];
        a[2] = k;
        flag = true;
        break;
      }
    }
  }
  if (!flag) {
    puts("No");
    return 0;
  }
  j = 2;
  for ((i) = (j + 1); (i) < (n); (i)++) {
    if (a[j] ^ a[j - 1] == a[i]) {
      k = a[j + 1];
      a[j + 1] = a[i];
      a[i] = k;
      j++;
      continue;
    }
  }
  if (j != n - 1 || a[n - 1] ^ a[0] != a[1] || a[n - 1] ^ a[n - 2] != a[0]) {
    puts("No");
    return 0;
  }
  return 0;
}
