#include using namespace std; const int B = 18, MAX_N = (1 << 19) + 2; int n, v[MAX_N]; int main() { #ifndef ONLINE_JUDGE freopen("data.in", "r", stdin); freopen("data.out", "w", stdout); #endif // ONLINE_JUDGE scanf("%d", &n); int rez = 0; for (int i = 1; i <= n; ++i) scanf("%d", &v[i]), rez |= v[i]; sort (v + 1, v + n + 1); int nr = 0, ad = 0; for (int i = 1; i <= n; ++i) { if ((nr & v[i]) == v[i]) { } else nr |= v[i], ++ad; } printf("%d", ad); return 0; }