#ifndef LOCAL #include using namespace std; #define debug(...) (void(0)) #else #include "algo/debug.h" #endif void solve() { int N; cin >> N; vector A(N); for(int i = 0; i < N; i++) cin >> A[i]; const int M = 1 << 14; vector dp(M + 1); dp[0] = 1; for(int i = 0; i < N; i++) { for(int j = 0; j <= M; j++) if(dp[j]) { dp[j ^ A[i]] = true; } } int ans = 0; for(int i = 0; i <= M; i++) ans += dp[i]; cout << ans << endl; } int main() { std::ios::sync_with_stdio(false); std::cin.tie(nullptr); int tt = 1; // std::cin >> tt; while (tt--) { solve(); } }