Будем говорить, что последовательность чисел a1, a2, ..., an является пирамидальной, если ai ≤ a⌊i / 2⌋ для всех i > 1 (где запись ⌊⌋ означает округление вниз).
Например, последовательность
— пирамидальная, поскольку 2 ≤ 4, 3 ≤ 4, 1 ≤ 2.
Определите, сколько существует перестановок натуральных чисел от 1 до N, образующих пирамидальную последовательность. Поскольку ответ может быть достаточно большим, выведите его по модулю 2 × 109 + 17.