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 main() {
  map<char, int> b = {{'0', 1}, {'4', 1}, {'6', 1}, {'8', 2},
                      {'9', 1}, {'A', 1}, {'B', 2}, {'D', 1}};
  long long x;
  string hex;
  cin >> x;
  int ans = 0;
  if (x == 0) {
    cout << 1;
    return 0;
  }
  while (x) {
    if (x % 16 < 10) hex += (char)(x % 16) + '0';
    if (x % 16 == 10) hex += 'A';
    if (x % 16 == 11) hex += 'B';
    if (x % 16 == 12) hex += 'C';
    if (x % 16 == 13) hex += 'D';
    if (x % 16 == 14) hex += 'E';
    if (x % 16 == 15) hex += 'F';
    x /= 16;
  }
  for (int i = 0; i < hex.size(); ++i) ans += b[hex[i]];
  cout << ans;
}
