시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB1251100.000%

문제

Гонки на пóдах --- популярный вид развлечений. Удовольствие от них способны получить и участники, и зрители, и букмекерские конторы, принимающие ставки на результат очередной гонки. При этом владельцы букмекерских контор периодически совершают некоторые незаконные действия, чтобы повлиять на итоговые позиции гонщиков. Например, можно испортить тормозную систему в некоторых подах, после чго гонщику придется ехать существенно медленнее обычной скорости ради сохранения контроля гонщика над машиной.

Выяснилось, что в последней гонке участвовали $n$ гонщиков. У каждого из гонщиков на машине был написан номер --- число от $1$ до $n$, номера всех гонщиков различались. Также известно, что владельцы одной из букмекерских контор испортили тормозную систему во всех машинах, номера которых превосходили некоторое число $k$. Любая машина с испорченной тормозной системой будет ехать медленнее, чем любая машина с исправными тормозами. Соответственно, в протоколе с результатами гонки у любой машины с номером большим, чем $k$, место будет также больше, чем $k$.

Вы проводите расследование этого неприятного инцидента. В качестве первого шага расследования вы решили найти все возможные значения числа $k$, изучая только результаты гонки.

입력

В первой строке входного файла содержится одно целое число $n$ ($1 \le n \le 100{\,}000$) --- количество гонщиков, участвовавших в соревновании. Вторая строка содержит $n$ различных чисел $a_i$ ($1 \le a_i \le n$) --- протокол с результатами гонки, где $a_i$ --- номер машины, которая заняла $i$-ое место.

출력

В первой строке выходного файла выведите одно целое число $c$ --- количество возможных значений числа $k$. В следующей строке выведите $c$ натуральных чисел, разделенных пробелами --- возможные значения числа $k$. Все числа во второй строке должны быть различны и не должны превосходить $n$. Числа во второй строке должны быть упорядочены по возрастанию.

예제 입력 1

6
2 1 4 3 6 5

예제 출력 1

3
2 4 6