#include #include #include #include #include #include #include #include #include #include #include #include #define vll vector #define vvvl vector #define vvl vector> #define VV(a, b, c, d) vector>(a, vector(b, c)) #define VVV(a, b, c, d) vector(a, vvl(b, vll (c, d))); #define re(c, b) for(ll c=0;c> n; vll a(n);get(a); vector ok(16385, 0); deque q; q.push_back(0); while(!q.empty()){ ll t = q.front(); q.pop_front(); ok[t] = 1; re(i, n){ if(!ok[t^a[i]]){ ok[t^a[i]] = 1; q.push_back(t^a[i]); } } } ll cnt = 0; for(int i=0;i<=16384;i++) cnt += ok[i]; std::cout << cnt << '\n'; }