long popcnt_array ( long long *a, int size )
{
int w, b;
long long word;
long n;
n = 0;
for ( w = 0; w < size; w++ ) {
word = a[w];
n += word & 1;
for ( b = 1; b < 64; b++ ) {
n += (word >> b) & 1;
}
}
return n;
}