#include <bits/stdc++.h>
using namespace std;
const int MOD(1000000007);
const int INF((1 << 30) - 1);
const int MAXN();
int a[4];
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  sort(a, a + n);
  if (n == 0) {
    printf("YES\n");
    printf("1\n");
    printf("1\n");
    printf("3\n");
    printf("3");
  } else if (n == 4) {
    int sum = a[0] + a[1] + a[2] + a[3], range = a[3] - a[0],
        med2 = a[1] + a[2];
    if (range * 4 == sum && range * 2 == med2) {
      printf("YES");
    } else {
      printf("NO");
    }
  } else if (n == 3) {
    int range = a[2] - a[0], sum = range * 4, x = sum - (a[0] + a[1] + a[2]);
    if (x >= a[0] && x <= a[2] && x + a[1] == range * 2) {
      printf("YES\n");
      printf("%d", x);
      return 0;
    }
    sum = (a[1] + a[2]) * 2, x = sum - (a[0] + a[1] + a[2]);
    if (x >= a[2] && a[1] + a[2] == (x - a[0]) * 2) {
      printf("YES\n");
      printf("%d", x);
      return 0;
    }
    sum = (a[0] + a[1]) * 2, x = sum - (a[0] + a[1] + a[2]);
    if (x <= a[0] && a[0] + a[1] == (a[2] - x) * 2) {
      printf("YES\n");
      printf("%d", x);
      return 0;
    }
    printf("NO");
  } else if (n == 2) {
    int range = a[1] - a[0], sum = range * 4, med2 = sum - (a[0] + a[1]);
    if (med2 == range * 2 && med2 / 2 >= a[0] && med2 / 2 <= a[1]) {
      printf("YES\n");
      printf("%d\n", med2 / 2);
      printf("%d", med2 / 2);
      return 0;
    }
    int x = a[1], y;
    while (true) {
      range = x - a[0], y = range * 2 - a[1];
      if (y > x) break;
      if (y >= a[0] && a[0] + a[1] + y + x == range * 4) {
        printf("YES\n");
        printf("%d\n", y);
        printf("%d", x);
        return 0;
      }
      x++;
    }
    x = a[0];
    while (x >= 1) {
      range = a[1] - x, y = range * 2 - a[1];
      if (y > a[1]) break;
      if (y >= x && x + y + a[0] + a[1] == range * 4) {
        printf("YES\n");
        printf("%d\n", x);
        printf("%d", y);
        return 0;
      }
      x--;
    }
    printf("NO");
  } else if (n == 1) {
    int x = a[0], range, med2;
    while (true) {
      range = x - a[0], med2 = range * 4 - (a[0] + x);
      if (med2 / 2 > x) break;
      if (med2 == range * 2 && med2 / 2 >= a[0]) {
        printf("YES\n");
        printf("%d\n", med2 / 2);
        printf("%d\n", med2 / 2);
        printf("%d", x);
        return 0;
      }
      x++;
    }
    x = a[0];
    while (x >= 1) {
      range = a[0] - x, med2 = range * 4 - (x + a[0]);
      if (med2 / 2 > a[0]) break;
      if (med2 == range * 2 && med2 / 2 >= x) {
        printf("YES\n");
        printf("%d\n", x);
        printf("%d\n", med2 / 2);
        printf("%d", med2 / 2);
        return 0;
      }
      x--;
    }
    for (int y = a[0]; y >= 1; y--) {
      x = a[0];
      while (true) {
        range = x - a[0], med2 = range * 4 - (a[0] + x);
        if (med2 / 2 > x) break;
        if (med2 == range * 2 && med2 / 2 >= a[0]) {
          printf("YES\n");
          printf("%d\n", med2 / 2);
          printf("%d\n", med2 / 2);
          printf("%d", x);
          return 0;
        }
        x++;
      }
    }
    printf("NO");
  }
}
