#include <bits/stdc++.h>
using namespace std;
int prime[1000001];
void sieve()
{
int i,j;
for (i = 1;i <= 1000000;i++)
prime[i] = i;
for (i = 2;i <= trunc(sqrt(1000000));i++)
if (prime[i] == i)
for (j = i * i;j <= 1000000;j += i)
if (prime[j] == j) prime[j] = i;
}
int pt(int n)
{
int i,j,d,res = 1;
while (n != 1)
{
i = prime[n];
d = 0;
while (n % i == 0)
{
n /= i;
d++;
}
res *= (1 + d);
}
return res;
}
int main()
{
int i,n,d = 0;
cin >> n;
sieve();
for (i = 1;i <= trunc(sqrt(n));i++)
if (n % i == 0)
{
if (pt(i) == 4) d++;
if (i != n / i && pt(n / i) == 4) d++;
}
cout << d;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBwcmltZVsxMDAwMDAxXTsKdm9pZCBzaWV2ZSgpCnsKICAgIGludCBpLGo7CiAgICBmb3IgKGkgPSAxO2kgPD0gMTAwMDAwMDtpKyspCiAgICBwcmltZVtpXSA9IGk7CiAgICBmb3IgKGkgPSAyO2kgPD0gdHJ1bmMoc3FydCgxMDAwMDAwKSk7aSsrKQogICAgaWYgKHByaW1lW2ldID09IGkpCiAgICBmb3IgKGogPSBpICogaTtqIDw9IDEwMDAwMDA7aiArPSBpKQogICAgaWYgKHByaW1lW2pdID09IGopIHByaW1lW2pdID0gaTsKfQppbnQgcHQoaW50IG4pCnsKICAgIGludCBpLGosZCxyZXMgPSAxOwogICAgd2hpbGUgKG4gIT0gMSkKICAgIHsKICAgICAgICBpID0gcHJpbWVbbl07CiAgICAgICAgZCA9IDA7CiAgICAgICAgd2hpbGUgKG4gJSBpID09IDApCiAgICAgICAgewogICAgICAgICAgICBuIC89IGk7CiAgICAgICAgICAgIGQrKzsKICAgICAgICB9CiAgICAgICAgcmVzICo9ICgxICsgZCk7CiAgICB9CiAgICByZXR1cm4gcmVzOwp9CmludCBtYWluKCkKewogICAgaW50IGksbixkID0gMDsKICAgIGNpbiA+PiBuOwogICAgc2lldmUoKTsKICAgIGZvciAoaSA9IDE7aSA8PSB0cnVuYyhzcXJ0KG4pKTtpKyspCiAgICBpZiAobiAlIGkgPT0gMCkKICAgIHsKICAgICAgICBpZiAocHQoaSkgPT0gNCkgZCsrOwogICAgICAgIGlmIChpICE9IG4gLyBpICYmIHB0KG4gLyBpKSA9PSA0KSBkKys7CiAgICB9CiAgICBjb3V0IDw8IGQ7CiAgICByZXR1cm4gMDsKfQo=