На арене сражаются \(n\) героев. Изначально у \(i\)-го героя \(a_i\) единиц здоровья.
Бой на арене проходит в несколько раундов. В начале каждого раунда каждый еще живой герой наносит \(1\) урона всем остальным героям. Удары всех героев происходят одновременно. Герои, чье здоровье стало меньше \(1\) в конце раунда, считаются убитыми.
Если после некоторого раунда в живых остается ровно \(1\) герой, то он объявляется победителем. В противном случае победителя нет.
Ваша задача — посчитать количество способов выбрать начальное здоровье для каждого героя \(a_i\), где \(1 \le a_i \le x\), таким образом, чтобы не существовало победителя боя. Количество способов может быть очень большим, поэтому выведите его по модулю \(998244353\). Два способа считаются различными, если хотя бы у одного героя отличается количество здоровья. Например, способы \([1, 2, 1]\) и \([2, 1, 1]\) — разные.
Выходные данные
Выведите одно целое число — количество способов выбрать начальное здоровье для каждого героя \(a_i\), где \(1 \le a_i \le x\), таким образом, чтобы не существовало победителя боя, взятое по модулю \(998244353\).