program div_game
  implicit none
  integer(8) :: n, i, m
  integer :: k, x = 0
  read(*,*) n
  m = n
  do i = 2_8, n
    if (i*i > n) exit
    k = 0
    do while (mod(m,i) == 0)
      m = m/i
      k = k+1
    end do
    x = x+calc(k)
  end do
  if (m /= 1) x = x+1
  write(*,'(i0)') x
contains
  integer function calc(k)
    integer, intent(in) :: k
    integer :: i
    do i = 0, k
      if (i*(i+1)/2 <= k) calc = i
    end do
  end
end program div_game