143165576
 1919020031
 1204252996
 210637432
 724264821
 1741
 619489590
 1199537418
 1075765759
 747976826
 638486017
 58438190
 1285316221
 186925426
 1180540990
 833393692
 1818960378
 2000000000
 0
 1309028227
 514714359
 624205168
 1795248373
 643201595
 1304312649

14 3 3 4 5 2 4 4 2 4 6 4 3 4 5 3 5 4 1 5 3 4 5 5 8
#include <bits/stdc++.h>
using namespace std;
int fun(string a) {
  int c = 0;
  for (int i = 0; i < a.size(); i++) {
    if (a[i] == '0' || a[i] == '4' || a[i] == '6' || a[i] == 'a' ||
        a[i] == 'd' || a[i] == '9')
      c++;
    else if (a[i] == '8' || a[i] == 'b')
      c += 2;
  }
  return c;
}
int main() {
  long long int a, b, c, d;
  string s, ss;
  vector<int> v;
  map<int, int> m;
  pair<int, int> p;
  stack<int> st;
  std::ios::sync_with_stdio(false);
  cin >> a;
  ostringstream oss;
  oss << hex << a;
  string str = oss.str();
  cout << fun(str);
}
