#include <bits/stdc++.h>

using namespace std;

int a[500000][60];
int c[60];

void pretvori(long long p,int j){
    long long k=p;
    int i;
    for(i=0;i<60;i++){
        a[j][i]=k%2;
        k=(k-(k%2))/2;
    }
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cerr.tie(0);
    int n,i,j,mm=0,id=1;
    long long p;
    cin>>n;
    for(i=0;i<n;i++){
        cin>>p;
        pretvori(p,i);
    }
    for(i=0;i<60;i++){
        c[i]=0;
        for(j=0;j<n;j++){
            if(a[j][i]==1){
                c[i]++;
            }
        }
    }
    sort(c,c+60);
    mm=n-c[59];
    c[59]=n;
    for(i=0;i<59;i++){
        if(c[i]%2==1){
            id=0;
        }
    }
    if(n%2==1){
        id=0;
    }
    cout<<mm+id;
    return 0;
}