Шість#8721

Шість

1 секунда
128 мегабайтів
Дуже складна

Еллі досліджує властивості заданого цілого числа . Вона вже з'ясувала, що це число має не більше шести різних простих дільників. Просте число — це натуральне число більше , яке не має додатних дільників, окрім і самого себе.

Зараз Еллі займається наступним: починаючи з порожнього списку, вона записує дільники числа , які більші за (деякі дільники можуть повторюватися кілька разів). Додаючи нове число в список, вона стежить за тим, щоб воно мало спільні дільники більше не більше ніж з одним із уже записаних чисел.

Наприклад, якщо число дорівнює , можливі правильні послідовності, які Еллі може створити, це: , (616, 6, 91, 23), (91, 616, 6, 23), , (66, 7, 7, 23, 299, 66), (143, 13, 66) і . Неправильна послідовність, наприклад, , оскільки не є дільником , або (66, 13, 143), оскільки має спільні дільники і з , і з .

Еллі тепер цікаво, скільки існує різних допустимих послідовностей із дільників числа . Дві послідовності вважаються різними, якщо вони мають різну довжину або є позиція, в якій вони містять різні числа.

Напишіть програму, яка допоможе Еллі визначити кількість допустимих послідовностей із дільників числа .

Вхідні дані

Одне ціле число n~(1 \le n \le 10^{15}). Число має не більше різних простих дільників.

Вихідні дані

Виведіть одне ціле число — кількість різних послідовностей дільників числа , які могла б написати Еллі. Оскільки це число може бути великим, виведіть тільки його залишок від ділення на 10^9 + 7.

Приклади

Пояснення до першого тесту. Нижче наведено всі допустимих послідовностей: , , (2, 2, 3), (2, 2, 3, 3), , (2, 3, 2), (2, 3, 2, 3), (2, 3, 3), (2, 3, 3, 2), , (2, 6, 3), , , (3, 2, 2), (3, 2, 2, 3), (3, 2, 3), (3, 2, 3, 2), , (3, 3, 2), (3, 3, 2, 2), , (3, 6, 2), , , (6, 2, 3), , (6, 3, 2), .

Пояснення до четвертого тесту. Відповідь , але оскільки відповідь слід обчислити за модулем 10^9 + 7, то відповідь дорівнює 14104757650~\%~(10^9 + 7) = 104757552.

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Приклад 3

Loading
Loading

Приклад 4

Loading
Loading