Сквозь вселенные

Сложность: 11%

Рик и Морти путешествуют по мультивселенной. В мире Рика и Морти существуют nn вселенных. Недавно Морти захотел узнать, сколько вообще существует вариантов их с Риком путешествий по мультивселенной (путешествие — обход всех вселенных в каком-то порядке). Так как Морти не очень умный, а число вселенных большое, он ограничится количеством путешествий по модулю mm. Более того, как вы знаете существуют клоны Морти. Поэтому за помощью к вам пришел не один Морти, а целых три. Помогите им в их тяжелом занятии.

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

На вход поступают три строки, каждая из которых содержит два целых числа nn, mm (1n10181 \le n \le 10^{18}, 1m1061 \le m \le 10^6).

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

Вывести 3 числа — ответ для каждого из Морти.

Подзадачи

баллынеобх. подзадачиограничения
1

40

-

n106n \le 10^6

2

60

1

n1018n \le 10^{18}

STDINSTDOUT
1 2
3 7
3 6
1
6
0

Примечание

Пояснение к тесту из условия. Для n=1n = 1 существует только один обход — посетить первую вселенную, для n=3n = 3 существует 66 различных обходов (123,132,213,231,321,312)(123, 132, 213, 231, 321, 312), поэтому по модулю 66 это 00, а по модулю 7766.