#include const int ars = (1 << 19) - 1; bool a[ars + 1]; int b[ars + 1]; int main() { int n; scanf("%d", &n); for (int i = 0; i < n; i++) { int x; scanf("%d", &x); a[x] = 1; } int ans = 0; for (int i = ars; i > 0; i--) { for (int j = 0; j < 19; j++) if ((i & (1 << j)) == 0) b[i] |= b[i | (1 << j)]; if (a[i ^ ars] && b[i] != (i ^ ars)) b[i] = (i ^ ars), ans++; } printf("%d\n", ans); return 0; }