#include <iostream>
#include <set>
int main()
{
int N;
while (std::cin >> N) {
int val, xor_val, ans = 0;
std::set<int> s;
for (int i = 0; i < N; ++i) {
scanf("%d", &val);
//如果输入0, 则ans+1, 并重新开始计算
if (val == 0) {
++ans;
s.clear();
}
//每次重新开始计算时, 第一个元素直接存储
else if (s.size() == 0) {
xor_val = val;
s.insert(xor_val);
}
else {
xor_val = xor_val ^ val;
if (s.find(xor_val) != s.end() || xor_val == 0) {
++ans;
s.clear();
}
else {
s.insert(xor_val);
}
}
}
std::cout << ans << std::endl;
}
return 0;
}