#include <bits/stdc++.h>
using namespace std;
const long double PI = 3.1415926535897932384626433832795;
const long double EPS = 1e-11;
int n, t;
bool b[1 << 20];
set<int> st, st2;
set<int>::iterator it;
int szi = 0;
int main() {
  cout << setiosflags(ios::fixed) << setprecision(10);
  scanf("%d", &n);
  for (int i = 0; i < (n); i++) {
    scanf("%d", &t);
    b[t] = 1;
    for (it = st.begin(); it != st.end(); it++) {
      st2.insert((*it) | t);
      b[(*it) | t] = 1;
    }
    st.clear();
    for (it = st2.begin(); it != st2.end(); it++) st.insert((*it));
    st.insert(t);
    szi = max(szi, (int)st.size());
    st2.clear();
  }
  if (szi > 100) {
    cout << szi;
    return 0;
  }
  int res = 0;
  for (int i = 0; i < (1 << 20); i++)
    if (b[i]) res++;
  cout << res;
  return 0;
}
