#include <bits/stdc++.h>
using namespace std;
const long long int MAXN = 2e6 + 5;
const long long int mod = 1e9 + 7;
const long double pi = 3.141592653;
void solve() {
  long long int n;
  cin >> n;
  set<long long int> s;
  for (long long int i = 0; i < n; i++) {
    long long int a;
    cin >> a;
    s.insert(a);
  }
  for (auto i : s) {
    for (long long int j = 0; j <= 30; j++) {
      long long int k = pow(2, j);
      if (s.find(i + k) != s.end() && s.find(i + 2 * k) != s.end()) {
        cout << 3 << endl;
        cout << i << " " << i + k << " " << i + 2 * k << endl;
        return;
      }
    }
  }
  for (auto i : s) {
    for (long long int j = 0; j <= 30; j++) {
      long long int k = pow(2, j);
      if (s.find(i + k) != s.end()) {
        cout << 2 << endl;
        cout << i << " " << i + k << endl;
        return;
      }
    }
  }
  cout << 1 << endl;
  cout << *s.begin() << endl;
  return;
}
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long int t = 1;
  while (t--) solve();
  cerr << "Time elapsed : " << clock() * 1000.0 / CLOCKS_PER_SEC << "ms"
       << '\n';
  return 0;
}
