#include <iostream>
#include <vector>
#include <cmath>
using namespace std;

bool zhishu(int x) { //质数:只能被1和自身整除
    for (int i = 2; i<=sqrt(x); i++) {
        if (x % i == 0) return false;
    }
    if(x!=1) return true;
    else return false;
}

int main() {
    int n;
    while (cin >> n) {
        vector<int> num;//存储n的所有质因数
        for (int i = 2; i<=sqrt(n); i++) {
            if (n % i == 0) {//是因数
                if(zhishu(i))//是质数
                num.push_back(i);
                if(zhishu(n/i))
                num.push_back(n / i);
            }
        }
        // for(int a:num) cout<<a<<" ";
        // cout<<endl;
        int res=0;
        for(int i=0;i<num.size();i++){
            while(n%num[i]==0){
                n/=num[i];
                res++;
            }
        }
        cout<<res<<endl;
    }
}
// 64 位输出请用 printf("%lld")