#include <bits/stdc++.h>
using namespace std;
int p;
int power(int x, int n) {
int y;
if (n == 1) return x;
else {
if(n%2 == 0) {
y = power(x, n/2) % p;
return (y * y) % p;
}
else {
y = power(x, n/2) % p;
return (((x * y) % p) * y) % p;
}
}
}
bool divisible(int x, int n) { //determines if (x^n) - 1 is divisible by p;
int rem = power(x, n);
if (rem == 1) {
return true;
}
else {
return false;
}
}
int main() {
cin >> p;
int counter = 0;
int primRoot;
for (int x = 2; x < p; x++) {
primRoot = 1;
if(divisible(x,p-1)) {
for (int j = 1; j < p-1; j++) {
if(divisible(x, j)) {
primRoot = 0;
break;
}
}
counter += primRoot;
}
}
cout << counter;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgcDsKCmludCBwb3dlcihpbnQgeCwgaW50IG4pIHsKCWludCB5OwoJaWYgKG4gPT0gMSkgcmV0dXJuIHg7CgllbHNlIHsKCQlpZihuJTIgPT0gMCkgewoJCQl5ID0gcG93ZXIoeCwgbi8yKSAlIHA7CgkJCXJldHVybiAoeSAqIHkpICUgcDsKCQl9CgkJZWxzZSB7CgkJCXkgPSBwb3dlcih4LCBuLzIpICUgcDsKCQkJcmV0dXJuICgoKHggKiB5KSAlIHApICogeSkgJSBwOwoJCX0KCX0KfQoKYm9vbCBkaXZpc2libGUoaW50IHgsIGludCBuKSB7IC8vZGV0ZXJtaW5lcyBpZiAoeF5uKSAtIDEgaXMgZGl2aXNpYmxlIGJ5IHA7CglpbnQgcmVtID0gcG93ZXIoeCwgbik7CglpZiAocmVtID09IDEpIHsKCQlyZXR1cm4gdHJ1ZTsKCX0KCWVsc2UgewoJCXJldHVybiBmYWxzZTsKCX0KfQoKaW50IG1haW4oKSB7CgljaW4gPj4gcDsKCWludCBjb3VudGVyID0gMDsKCWludCBwcmltUm9vdDsKCWZvciAoaW50IHggPSAyOyB4IDwgcDsgeCsrKSB7CgkJcHJpbVJvb3QgPSAxOwoJCWlmKGRpdmlzaWJsZSh4LHAtMSkpIHsKCQkJZm9yIChpbnQgaiA9IDE7IGogPCBwLTE7IGorKykgewoJCQkJaWYoZGl2aXNpYmxlKHgsIGopKSB7CgkJCQkJcHJpbVJvb3QgPSAwOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJCWNvdW50ZXIgKz0gcHJpbVJvb3Q7CgkJfQoJfQoJY291dCA8PCBjb3VudGVyOwoJcmV0dXJuIDA7Cn0=