#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;   }   