#include <bits/stdc++.h> #define whas(X) cerr<<#X<<" is "<<X<<endl; #define endl '\n' #define rep(i,j,N) for( int i=j ; i<N ; i++ ) #define rrep(i,N,j) for( int i=N-1 ; i>=j ; i-- ) #define si(i) scanf("%d",&i) #define sl(i) scanf("%lld",&i) #define pi(i) printf("%d",i) #define pll(i) printf("%lld",i) #define pin(i) printf("%d\n",i) #define plln(i) printf("%lld\n",i) #define pn printf("\n") #define pb push_back #define mp make_pair #define ff first #define ss second #define sz(a) int((a).size()) #define tr(c,i) for(__typeof((c).begin())i = (c).begin(); i != (c).end(); i++) #define all(a) (a).begin(),(a).end() #define present(a,x) (find(all(a),x) != (a).end()) #define cpresent(c,x) ((c).find(x) != (c).end()) #define fast_io ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; typedef long long LL; typedef pair<int,int> ii; typedef vector<int> vi; typedef vector<pair<int,int> >vpi; typedef vector <LL> vll; typedef vector <pair<LL,LL> > vpll; typedef pair <LL,LL> ll; int main() { fast_io; int n; cin>>n; int i,j; vi x; for(i=0;i<n;i++) { int a; cin>>a; x.pb(a); } map<int,int> y[36]; y[0][x[0]] = 1; for(i=1;i<n;i++) { int sum = x[i]; for(j=i-1;j>=0;j--) { tr(y[j],it) //cout<<it->ff<<" "<<it->ss<<endl y[i][(it->ff) ^ sum] += it->ss; sum += x[j]; } y[i][sum] += 1; } cout<<y[n-1][0]<<endl; return 0; }