#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define fix(n) cout<; const ll MOD = 1000000007; // 10^9 + 7 const int dx[8] = {1, 0, -1, 0, 1, -1, -1, 1}; const int dy[8] = {0, 1, 0, -1, 1, 1, -1, -1}; void solve() { ll n; cin >> n; vector a(n); rep(i, n) cin >> a[i]; const int MAX = 32768; vector dp(MAX); dp[0] = true; rep(i, n)rep(j, MAX) if (dp[j]) dp[j^a[i]] = true; ll ans = 0; rep(i, MAX) if (dp[i]) ans++; outl(ans); } signed main() { cin.tie(0); ios::sync_with_stdio(false); srand((unsigned)time(NULL)); fix(12); solve(); }