C. Арифметическая прогрессия
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Все знают, что такое арифметическая прогрессия. На всякий случай напомним, что арифметической прогрессией называется такая последовательность чисел a1, a2, ..., an длины n, что выполняется условие:

a2 - a1 = a3 - a2 = a4 - a3 = ... = ai + 1 - ai = ... = an - an - 1.

Например, последовательности [1, 5], [10], [5, 4, 3] являются арифметическими прогрессиями, а последовательности [1, 3, 2], [1, 2, 4] — нет.

У Александра есть n карточек, на которых написаны целые числа. Артур хочет подарить Александру еще ровно одну карточку с числом, так, чтобы из полученных n + 1 карточек Александр мог выложить арифметическую прогрессию (Александр обязан использовать все свои карточки).

Артур уже купил карточку, но еще не написал число на ней. Помогите ему, выведите все целые числа, которые можно написать на карточке, чтобы описанное условие выполнялось.

Входные данные

В первой строке записано целое число n (1 ≤ n ≤ 105) — количество карточек. В следующей строке записана последовательность целых чисел — номера, записанные на карточках Александра. Номера — целые положительные числа, каждое из которых не больше 108.

Выходные данные

Если Артур может записать на карточку бесконечно много различных целых чисел, выведите в единственной строке -1.

Иначе выведите в первой строке количество целых чисел, которые подходят. Во второй строке выведите сами числа в порядке возрастания. Обратите внимание, что числа в ответе могут быть больше 108 или даже быть отрицательными (смотрите тестовые примеры).

Примеры
Входные данные
3
4 1 7
Выходные данные
2
-2 10
Входные данные
1
10
Выходные данные
-1
Входные данные
4
1 3 5 9
Выходные данные
1
7
Входные данные
4
4 3 4 5
Выходные данные
0
Входные данные
2
2 4
Выходные данные
3
0 3 6