#include #include #include #include #include using namespace std; int main(void) { int n; cin >> n; vector a(n); for (int i = 0; i < n; ++i) cin >> a[i]; vector can(16385, 0); can[0] = 1; for (int i = 0; i < n; ++i) { for (int j = 0; j < 16385; ++j) { if (!can[j]) continue; can[j | a[i]] |= can[j]; } } cout << accumulate(can.begin(), can.end(), 0) << endl; }