#include <bits/stdc++.h>
using namespace std;
long long n, x, a[200000];
long long bs(long long xx, long long yy, long long k) {
  long long m = (xx + yy) / 2;
  if (yy - xx <= 1) return xx;
  if (a[m] <= k)
    return bs(m, yy, k);
  else
    return bs(xx, m, k);
}
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  sort(a, a + n);
  x = 1;
  for (int j = 0; j < 31; j++) {
    for (int i = 0; i < n; i++) {
      if (a[bs(0, n, a[i] - x)] == a[i] - x &&
          a[bs(0, n, a[i] + x)] == a[i] + x) {
        return cout << 3 << endl
                    << a[i] - x << ' ' << a[i] << ' ' << a[i] + x,
               0;
      }
    }
    x *= 2;
  }
  x = 1;
  for (int j = 0; j < 31; j++) {
    for (int i = 0; i < n; i++) {
      if (a[bs(0, n, a[i] - x)] == a[i] - x) {
        return cout << 2 << endl << a[i] - x << ' ' << a[i], 0;
      }
    }
    x *= 2;
  }
  cout << 1 << endl << a[0];
  return 0;
}
