#include #include using namespace std; int main(void) { int n; int a[5000]; int buf[100000]; unordered_map dp; cin >> n; for(int i = 0; i < n; i++) cin >> a[i]; dp[0] = true; for(int i = 0; i < n; i++) { int len = 0; for(auto p : dp) { int x = a[i] ^ p.first; if(dp.count(x) > 0) continue; buf[len++] = x; } for(int j = 0; j < len; j++) dp[buf[j]] = true; } cout << dp.size() << endl; return 0; }