#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
using namespace std;
pair<long long int, long long int> solve(vector<long long int>& v) {
  long long int izq = 0, same = 0;
  for (int i = 0; i < v.size(); i++) {
    long long int sum = 0;
    for (int j = i + 1; j + 1 < v.size(); j++) {
      sum += v[j];
      if (sum >= (2 * v[i])) break;
      if (v[i] < v[j + 1]) continue;
      long long int x = v[i] xor v[j + 1];
      if (x != sum) continue;
      if (v[i] == v[j + 1])
        same++;
      else
        izq++;
    }
  }
  return {izq, same};
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  ;
  long long int n;
  cin >> n;
  vector<long long int> v(n);
  for (auto& it : v) cin >> it;
  pair<long long int, long long int> r = solve(v);
  long long int izq = r.first;
  long long int same = r.second;
  reverse(v.begin(), v.end());
  long long int der = solve(v).first;
  cout << izq + der + same << endl;
}
