#include <bits/stdc++.h>
using namespace std;
int n, w[101000], A[10], cnt;
map<int, int> Map;
int main() {
  int i;
  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    scanf("%d", &w[i]);
  }
  sort(w, w + n);
  if (n % 3) {
    if (w[0] == w[n - 1] && w[0] == 0)
      puts("Yes");
    else
      puts("No");
    return 0;
  }
  if (w[0] == w[n - 1]) {
    puts("Yes");
    return 0;
  }
  for (i = 0; i < n; i++) Map[w[i]]++;
  for (auto &t : Map) {
    if (t.second % (n / 3)) {
      puts("No");
      return 0;
    }
    for (i = 0; i < t.second / (n / 3); i++) {
      A[cnt++] = t.first;
    }
  }
  if (cnt == 3 && (A[0] ^ A[1] ^ A[2]) == 0) {
    puts("Yes");
    return 0;
  } else
    puts("No");
}
