Вчитель математики підготував задач для атестації, кожна з яких включає операції , , та . Кожна задача має певну кількість арифметичних операцій. Для проходження атестації учню необхідно розв'язати задач, вибраних зі списку. Вибір повинен бути таким, щоб у вибраній послідовності кожна наступна задача (з більшим індексом) містила більше операцій, ніж попередня.
Визначте кількість різних способів обрати задач так, щоб обрана послідовність відповідала цій умові.
У першому рядку містяться два цілих числа і (1 \leq N \leq 100, 1 \leq K \leq 100) — задач підготовлено, необхідних для атестації.
Далі рядків, у кожному з яких по одному цілому числу — кількість арифметичних операцій у -й задачі. Кількість операцій у кожній задачі не перевищує .
Виведіть одне ціле число: кількість правильних способів вибрати задач, які задовольняють умові. Два способи вважаються різними, якщо відрізняються хоча б однією задачею. Якщо таких способів немає, виведіть -1.
Приклад 11