Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

J. Формула Цеизенпoка
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Ученый Цеизенпoк с планеты i1c5l стал известен на вcю Вселенную благодаря своему недавнему открытию — формуле Цеизенпока. У этой формулы всего три аргумента: n, k и m, а значением этой формулы является число сочетаний из n по k по модулю m.

Пока вся Вселенная думает, для каких целей применима данная формула, нам требуется автоматизировать её вычисление.

Входные данные

Входной файл содержит три целых числа n, k, m, разделенных пробелами (1 ≤ n ≤ 1018, 0 ≤ k ≤ n и 2 ≤ m ≤ 1 000 000).

Выходные данные

Выведите значение формулы для данных n, k, m.

Примеры
Входные данные
2 1 3
Выходные данные
2
Входные данные
4 2 5
Выходные данные
1