Трійки
Дуже складна
Обмеження на час виконання 2 секунди
Обмеження на використання пам'яті 256 мегабайтів
Дано поле . Рядки нумерують зверху вниз від до . Стовпці нумеруються зліва направо з до . Деякі клітинки білі, а всі інші — чорні.
Введемо масив довжиною , а також масиви та довжиною , вони будуються наступним чином:
() — мінімальне таке, що клітинка чорна, або , якщо такої немає;
() — мінімальне таке, що клітинка чорна, або , якщо такої немає;
() — максимальне таке, що клітинка чорна, або , якщо такої немає.
Скільки трійок різних масивів може бути? Знайдіть відповідь за модулем .
Вхідні дані
Перший рядок містить два цілі числа та (, ).
Вихідні дані
Виведіть відповідь за модулем .
Приклади
Вхідні дані #1
Відповідь #1
Вхідні дані #2
Відповідь #2
Вхідні дані #3
Відповідь #3
Вхідні дані #4
Відповідь #4
Відправки 2