#include #include #include using namespace std; int main() { bool dp[16385] = {}, dp2[16385] = {}; int N,a; cin >> N; dp[0] = 1; for (size_t i = 0; i < N; i++) { cin >> a; if (!dp[a]) { for (size_t j = 0; j < 16385; j++) { if (dp[j]) { dp2[a^j] = 1; } } for (size_t j = 0; j < 16385; j++) { dp[j] |= dp2[j]; } dp[a] = 1; } } int ans = 0; for (size_t i = 0; i < 16385; i++) { ans += dp[i]; } cout << ans << endl; }