Рассмотрим путь от точки (x1, y1) до точки (x2, y2), используя только единичные шаги на север или восток. Назовем такой путь допустимым, если ни одна из его промежуточных точек недопустима.
Пусть P (n) - число допустимых путей от (0, 0) до (n, n). Можно проверить, что P (5) = 252, P (16) = 596994440 и P (1000) mod 1 000 000 007 = 341920854.
Найти P (10 000 000) mod 1 000 000 007.
euler408()
должен вернуть 299742733.
testString: 'assert.strictEqual(euler408(), 299742733, "euler408()
should return 299742733.");'
```