#include <math.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define PI acos(-1)
typedef unsigned long long int ull;
typedef long long int ll;
typedef long double ld;

int isPrime(ll n) {
  ll sqrtn;

  sqrtn = (ll)sqrt((double)n);
  if (n < 2) {
    return (0);
  } else if (n == 2) {
    return (1);
  }

  for (ll i = 2; i <= sqrtn + 1; i++) {
    if (n % i == 0) {
      return (0);
    }
  }
  return (1);
}


int main(void) {
  /* 標準入力フラグ */
  int   scan;

  /* 数入力 */
  ll    answer;
  ll    n;
  answer = 0;
  scan = scanf("%lld", &n);
 
  /* プログラムを書く */
  ll    *primes;
  ll    sqrtn;

  sqrtn = (ll)sqrt((double)n);
  primes = (ll *)malloc(sizeof(ll) * sqrtn);

  ll k = 0;

  //printf("nは素数？-->");
  //printf("%d\n", isPrime(n));

  if (n >= 2 && isPrime(n)) {
    printf("1");
    return (0);
  }

  for (ll p = 2; p <= n; p++) {
    if (n >= p && n % p == 0) {
      for (ll q = 0; q <= k; q++) {
        if (primes[q] == p)
          break;
      }
      primes[k] = p;
      k++;
      n = n / p;
    }
  }

  /* 数回答 */
  printf("%lld", k);

  return (0);
}
