#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001LL int main(){ int n; cin>>n; vector a(n); rep(i,n){ cin>>a[i]; } int ans = 0; int mask = 0; for(int i=29;i>=0;i--){ if(i%2==1){ bool f = false; rep(j,a.size()){ if((a[j]>>i)&1){ f = true; } } if(f){ mask |= 1< b; rep(j,a.size()){ if((a[j]>>i)&1){ b.push_back(a[j]); } } if(b.size()==0)continue; int cur = 0; rep(j,b.size()){ cur |= b[j]; } if((mask & cur)!=mask)continue; ans += 1<