#include <bits/stdc++.h>
using namespace std;
long long gcd(int x, int y) {
  return !y ? (long long)x : (long long)gcd(y, x % y);
}
int main() {
  double n, have, idx = 0;
  cin >> n, have = n;
  bool found = 0;
  vector<double> array(n), tmp(4);
  for (long long i = 0; i < n; i++) cin >> array[i];
  sort(array.begin(), array.end());
  if (!n)
    cout << "YES" << endl << 1 << endl << 1 << endl << 3 << endl << 3 << endl;
  else if (n == 4) {
    if ((array[0] + array[1] + array[2] + array[3]) / 4 ==
            (array[1] + array[2]) / 2 &&
        (array[1] + array[2]) / 2 == array[3] - array[0])
      cout << "YES" << endl;
    else
      cout << "NO" << endl;
  } else {
    if (n == 1) {
      cout << "YES" << endl, n = array[0];
      double a, b, c, d;
      a = n, b = n + 1, c = n + 3, d = a + (b + c) / 2;
      while (!((a + b + c + d) / 4 == (b + c) / 2 && (b + c) / 2 == d - a))
        b++, c++, d = a + (b + c) / 2;
      cout << b << endl << c << endl << d << endl;
    } else if (n == 2) {
      double range = max(array[0], array[1]) * 4;
      for (long long i = 1; i < range; i++)
        for (long long j = i; j < range; j++) {
          tmp[0] = array[0], tmp[1] = array[1], tmp[2] = i, tmp[3] = j,
          sort(tmp.begin(), tmp.end());
          if ((tmp[0] + tmp[1] + tmp[2] + tmp[3]) / 4 ==
                  (tmp[1] + tmp[2]) / 2 &&
              (tmp[1] + tmp[2]) / 2 == tmp[3] - tmp[0]) {
            found = 1;
            goto hell;
          }
        }
    hell:
      if (found) {
        cout << "YES" << endl;
        for (long long i = 0; i < 4; i++)
          if (idx < n && tmp[i] == array[idx]) {
            idx++;
            continue;
          } else
            cout << tmp[i] << endl;
      } else
        cout << "NO" << endl;
    } else {
      for (long long i = 1; i < 501; i++) {
        tmp[0] = array[0], tmp[1] = array[1], tmp[2] = array[2], tmp[3] = i,
        sort(tmp.begin(), tmp.end());
        if ((tmp[0] + tmp[1] + tmp[2] + tmp[3]) / 4 == (tmp[1] + tmp[2]) / 2 &&
            (tmp[1] + tmp[2]) / 2 == tmp[3] - tmp[0]) {
          found = 1;
          goto hell_;
        }
      }
    hell_:
      if (found) {
        cout << "YES" << endl;
        for (long long i = 0; i < 4; i++)
          if (idx < n && tmp[i] == array[idx]) {
            idx++;
            continue;
          } else
            cout << tmp[i] << endl;
      } else
        cout << "NO" << endl;
    }
  }
  return 0;
}
