import sys sys.setrecursionlimit(10**6) inf=float('inf') N=int(input()) A=list(map(int,input().split())) M=20 dp=[[0]*(M+1) for _ in range(N+1)] dp[0][0]=1 for i in range(N): for x in range(M+1): dp[i+1][x]=dp[i][x] if x ^ A[i]<=M: dp[i+1][x]|=dp[i][x ^ A[i]] print(sum(dp[N]))