Дано просте число . Розглянемо множину Z_p = \{0, 1, \ldots, p-1\} — поле залишків за модулем . У цьому полі і множення, і додавання виконуються за модулем .
Розглянемо також множину унітарних многочленів над цим полем вигляду
де — ступінь многочлена, — змінна, а a_i \in Z_p — коефіцієнти.
Наприклад, многочлен x^2 + x + 1 у полі Z_2 є незвідним. Унітарний многочлен називається незвідним, якщо його не можна подати як f(x) = p(x) \cdot q(x), де і — многочлени меншого ступеня, ніж . Зауважимо, що це єдиний незвідний многочлен ступеня два у полі Z_2.
Ваше завдання — обчислити кількість незвідних унітарних многочленів ступеня у полі Z_p.
Вхідний файл складається з одного рядка, що містить два цілі числа та (1 \leq p, n \leq 10^9, 1 \leq p^n < 10^{18}).
Виведіть кількість незвідних унітарних многочленів ступеня у полі Z_p.
Приклад 1