#include #include #include #include using namespace std; using mint = atcoder::modint1000000007; // xsの部分列を数える(空列含む) template Int count_subsequence(const vector& xs) { map ds; Int dsum = 0; for (auto x : xs) { Int pat = dsum + 1; dsum += pat - ds[x]; ds[x] = pat; } return dsum + 1; } void solve() { int n; cin >> n; vector xs; { int xsum = 0; while (n--) { int x; cin >> x; xsum ^= x; xs.push_back(xsum); } xs.pop_back(); } cout << count_subsequence(xs).val() << "\n"; } int main() { cin.tie(nullptr); ios::sync_with_stdio(false); solve(); return 0; }