#include #include #include using namespace std; constexpr int inputLimit = 2 << 14; int main() { int n; cin >> n; vector a(n); for(auto& x : a) { cin >> x; } vector> dp(n + 1, vector(inputLimit + 1, false)); dp[0][0] = true; for(auto i = 0; i < n; ++i) { for(auto j = 0; j <= inputLimit; ++j) { if(dp[i][j]) { dp[i + 1][j] = dp[i][j]; dp[i + 1][j ^ a[i]] = dp[i][j]; } } } int result = 0; for(auto i = 0; i <= inputLimit; ++i) { if(dp[n][i]) { ++result; } } cout << result << endl; }