#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
#define int long long int
#define pb push_back
#define pii pair<int,int>
#define vi vector<int>
#define pqi priority_queue<int>
#define pqim priority_queue<int,vector<int>,greater<int>>
#define umis unordered_map<int,string>
#define umii unordered_map<int,int>
#define msi map<string,int>
#define mii map<int,int>
#define setbits(n) __builtin_popcountll(n) // for long long
#define zrbits(n) __builtin_ctzll(n)
#define f(i,x,n) for(int i=x;i<n;++i)
#define mod 1000000007
#define sp(x,y) fixed<<setprecision(y)<<x
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
#define fastio ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> pbds;
// ============================================================================================================
int32_t main() {
fastio;
int n, num;
cin >> n;
int arr[n];
f(i, 0, n) {
cin >> num;
arr[i] = num;
}
sort(arr, arr + n);
if (n >= 130) cout << "Yes" << endl;
else {
bool flag = false;
f(i, 0, n) {
f(j, i + 1, n) {
f(k, j + 1, n) {
int d = (arr[i] ^ arr[j] ^ arr[k]);
if (binary_search(arr, arr + n, d)) {
flag = true;
break;
}
}
if (flag) break;
}
if (flag) break;
}
if (flag) cout << "Yes" << endl;
else cout << "No" << endl;
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2luY2x1ZGU8ZXh0L3BiX2RzL2Fzc29jX2NvbnRhaW5lci5ocHA+CiNpbmNsdWRlPGV4dC9wYl9kcy90cmVlX3BvbGljeS5ocHA+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBuYW1lc3BhY2UgX19nbnVfcGJkczsKCgojZGVmaW5lIGludCAJCQkJCWxvbmcgbG9uZyBpbnQKI2RlZmluZSBwYiAJCQkJCQlwdXNoX2JhY2sKI2RlZmluZSBwaWkgCQkJCQlwYWlyPGludCxpbnQ+CiNkZWZpbmUgdmkgCQkJCQkJdmVjdG9yPGludD4KI2RlZmluZSBwcWkgCQkJCQlwcmlvcml0eV9xdWV1ZTxpbnQ+CiNkZWZpbmUgcHFpbSAJCQkJCXByaW9yaXR5X3F1ZXVlPGludCx2ZWN0b3I8aW50PixncmVhdGVyPGludD4+CiNkZWZpbmUgdW1pcyAJCQkJCXVub3JkZXJlZF9tYXA8aW50LHN0cmluZz4KI2RlZmluZSB1bWlpIAkJCQkJdW5vcmRlcmVkX21hcDxpbnQsaW50PgojZGVmaW5lIG1zaSAJCQkJICAgIG1hcDxzdHJpbmcsaW50PgojZGVmaW5lIG1paSAJCQkJICAgIG1hcDxpbnQsaW50PgojZGVmaW5lIHNldGJpdHMobikJCQkgICAgX19idWlsdGluX3BvcGNvdW50bGwobikgLy8gZm9yIGxvbmcgbG9uZwojZGVmaW5lIHpyYml0cyhuKQkJCSAgICBfX2J1aWx0aW5fY3R6bGwobikKI2RlZmluZSBmKGkseCxuKQkJCSAgICBmb3IoaW50IGk9eDtpPG47KytpKQojZGVmaW5lIG1vZAkJCSAgICAJCTEwMDAwMDAwMDcKI2RlZmluZSBzcCh4LHkpCQkJICAgIAlmaXhlZDw8c2V0cHJlY2lzaW9uKHkpPDx4Cm10MTk5MzcJCQkJCQkJcm5nKGNocm9ubzo6c3RlYWR5X2Nsb2NrOjpub3coKS50aW1lX3NpbmNlX2Vwb2NoKCkuY291bnQoKSk7CiNkZWZpbmUgZmFzdGlvICAgICAgICAgICAgICAgICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCkKdHlwZWRlZiB0cmVlPGludCwgbnVsbF90eXBlLCBsZXNzPGludD4sIHJiX3RyZWVfdGFnLCB0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+IHBiZHM7CgoKCgovLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCgppbnQzMl90IG1haW4oKSB7CgoJZmFzdGlvOwoKCWludCBuLCBudW07CgljaW4gPj4gbjsKCglpbnQgYXJyW25dOwoJZihpLCAwLCBuKSB7CgkJY2luID4+IG51bTsKCQlhcnJbaV0gPSBudW07Cgl9CgoJc29ydChhcnIsIGFyciArIG4pOwoKCWlmIChuID49IDEzMCkgY291dCA8PCAiWWVzIiA8PCBlbmRsOwoJZWxzZSB7CgkJYm9vbCBmbGFnID0gZmFsc2U7CgkJZihpLCAwLCBuKSB7CgkJCWYoaiwgaSArIDEsIG4pIHsKCQkJCWYoaywgaiArIDEsIG4pIHsKCQkJCQlpbnQgZCA9IChhcnJbaV0gXiBhcnJbal0gXiBhcnJba10pOwoJCQkJCWlmIChiaW5hcnlfc2VhcmNoKGFyciwgYXJyICsgbiwgZCkpIHsKCQkJCQkJZmxhZyA9IHRydWU7CgkJCQkJCWJyZWFrOwoJCQkJCX0KCQkJCX0KCQkJCWlmIChmbGFnKSBicmVhazsKCQkJfQoJCQlpZiAoZmxhZykgYnJlYWs7CgkJfQoJCWlmIChmbGFnKSBjb3V0IDw8ICJZZXMiIDw8IGVuZGw7CgkJZWxzZSBjb3V0IDw8ICJObyIgPDwgZW5kbDsKCX0KCXJldHVybiAwOwp9Cg==