#include <bits/stdc++.h>
using namespace std;
const int Maxn = 200010;
const int inf = 2147483647;
const double pi = acos(-1.0);
int read() {
  int x = 0, f = 1;
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') f = -1;
    ch = getchar();
  }
  while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar();
  return x * f;
}
int n, pre[Maxn], nxt[Maxn], ed;
long long a[Maxn], sum[Maxn];
void ins(int l, int m, int r) {
  pre[m] = l, nxt[m] = r;
  if (l != -1) nxt[l] = m;
  if (r != -1) pre[r] = m;
}
int main() {
  n = read();
  sum[0] = 0;
  for (int i = 1; i <= n; i++) a[i] = read(), sum[i] = sum[i - 1] + a[i];
  int ans = 0;
  pre[1] = nxt[1] = -1;
  ed = 1;
  for (int i = 2; i <= n; i++) {
    int t = ed, st;
    bool flag = false;
    while (t != -1) {
      if (!flag && a[t] + sum[t] < sum[i] + a[i]) {
        flag = true;
        if (nxt[t] == -1) ed = i;
        ins(t, i, nxt[t]);
      }
      if (a[t] + sum[t] >= sum[i - 1] - a[i]) {
        if ((a[i] ^ a[t]) == sum[i - 1] - sum[t] && i - t >= 2) ans++;
      } else
        break;
      st = t;
      t = pre[t];
    }
    if (!flag) ins(-1, i, st);
  }
  printf("%d", ans);
}
