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;
string inttoa(long long n) {
  string ans = " ";
  do {
    int t = n % 16;
    if (t >= 0 && t <= 9)
      ans += t + '0';
    else
      ans += t - 10 + 'A';
    n /= 16;
  } while (n != 0);
  reverse(ans.begin(), ans.end());
  return ans;
}
int l, i, sum;
long long n;
string s;
int main() {
  cin >> n;
  s = inttoa(n);
  l = s.size();
  for (i = 0; i < l; i++) {
    if (s[i] == '0' || s[i] == '4' || s[i] == '6' || s[i] == '9' ||
        s[i] == 'D' || s[i] == 'A')
      sum++;
    if (s[i] == '8' || s[i] == 'B') sum += 2;
  }
  cout << sum;
  return 0;
}
