import java.util.*
fun readint()=readLine()!!.toInt()
fun readll()=readLine()!!.toLong()
fun readstring()=readLine()!!
fun readlint()=(readLine()!!.split(" ").map{it.toInt()}).toIntArray()
fun readlll()=(readLine()!!.split(" ").map{it.toLong()}).toLongArray()

fun solve() {
    var A = readll();
    var cur = 2L;
    var ans = 0;
    while (cur * cur <= A) {
        if (A % cur != 0L) {
            cur++;
            continue;
        }
        var cnt = 0;
        while (A % cur == 0L) {
            A /= cur;
            cnt++;
        }
        var nd = 1;
        while(cnt >= nd) {
            ans++;
            cnt -= nd;
            nd++;
        }
    }
    if (A > 1) {
        ans++;
    }
    println(ans)
}
fun main(args: Array<String>) {
    val t = 1;
    repeat(t) {
        solve();
    }
}