Анти-паліндромні рядки#9616

Анти-паліндромні рядки

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

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

Вхідні дані

У першому рядку задано кількість тестів . Кожний тест складається з одного рядка, що містить два цілих числа і m~(1 \le n, m \le 10^9).

Вихідні дані

Для кожного тесту виведіть шукану кількість рядків по модулю 10^9 + 7.

Приклади

Приклад 1

Loading
Loading