#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 100 * 1000 + 9;
int n;
long long a[MAX_N];
set<long long> d;
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  sort(a, a + n);
  for (int i = 1; i < n; i++) d.insert(a[i] - a[i - 1]);
  int sz = d.size();
  if (sz == 0) {
    cout << "-1\n";
  } else if (sz == 1) {
    if (*d.begin() == 0) {
      cout << "1\n";
      cout << a[0] << '\n';
    } else if (n == 2 && *d.begin() % 2 == 0) {
      cout << "3\n";
      cout << a[0] - *d.begin() << ' ' << a[0] + *d.begin() / 2 << ' '
           << a[n - 1] + *d.begin() << '\n';
    } else {
      cout << "2\n";
      cout << (a[0] - *d.begin()) << ' ' << (a[n - 1] + *d.begin()) << '\n';
    }
  } else if (sz == 2) {
    auto it = d.begin();
    long long d1 = *it++;
    long long d2 = *it;
    if (d2 == 2 * d1) {
      int cnt = 0;
      int idx = 0;
      for (int i = 1; i < n; i++)
        if (a[i] - a[i - 1] == d2) {
          idx = i;
          cnt++;
        }
      if (cnt > 1)
        cout << "0\n";
      else {
        cout << "1\n";
        cout << a[idx - 1] + d1 << '\n';
      }
    } else
      cout << "0\n";
  } else
    cout << "0\n";
  return 0;
}
