const input = require("fs").readFileSync("/dev/stdin", "utf8");
// const input = `3
// 1 2 3`;

const lines = input.split('\n');
const N = +lines[0];
const numbers = lines[1].split(' ').map(Number).slice(0, N);

// 最初の2引きを選ぶ
numbers.forEach((n1, i1) => {
  numbers.slice().forEach((n2, i2) => {
    if (i2 <= i1) {
      return;
    }
    // 2ひき以外
    const left = [].concat(
      numbers.slice(0, i1),
      numbers.slice(i1 + 1, i2),
      numbers.slice(i2 + 1)
    );
    // 最初の2引きを元に成り立っていればYes
    if (isValid(n1, n2, left, n1)) {
      console.log('Yes');
      process.exit(0);
    }
  });
});

// どの２匹でもダメならNo
console.log('No');

// 最初の2引きを元に成り立っていればYes
function isValid(n1, n2, left, n0) {
  const n3 = n1 ^ n2;

  if (left.length === 0) {
    return n3 === n0;
  }

  const i3 = left.indexOf(n3);
  if (i3 === -1) {
    return false;
  }
  return isValid(n2, n3, [].concat(
    left.slice(0, i3),
    left.slice(i3 + 1)
  ), n0);
}
