#include<bits/stdc++.h>
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
const int mod = 1'000'000'007;
auto phi = [&] (int64_t num) {
int64_t res = num;
for (int64_t d = 2; d * d <= num; d++) {
if (num % d == 0) {
while (num % d == 0) {
num /= d;
}
res -= res / d;
}
}
if (num > 1) {
res -= res / num;
}
return res;
};
int64_t n, k;
std::cin >> n >> k;
for (int i = 0; i < (k + 1) / 2; i++) {
n = phi(n);
if (n == 1) break;
}
std::cout << n % mod << '\n';
return 0;
}