#include<bits/stdc++.h>

using namespace std;

using int64 = long long;
const int mod = 1e9 + 7;

int main() {
  int N, A[100000];

  cin >> N;
  for(int i = 0; i < N; i++) cin >> A[i];

  int ret = 0;
  for(int i = 0; i < N; i++) ret ^= A[i];

  for(int i = 0; i < N; i++) A[i] ^= A[i] - 1;

  int bit = 0;
  for(int i = 0; i < N; i++) bit |= 1 << (__builtin_popcount(A[i]) - 1);

  int add = 0;
  for(int i = 30; i >= 0; i--) {
    if((ret >> i) & 1) {
      if((bit >> i) & 1) {
        ret ^= -1;
        ++add;
      } else {
        cout << -1 << endl;
        return 0;
      }
    }
  }

  cout << add << endl;
}
