#include <bits/stdc++.h>
using namespace std;
int a[30], num, pp[30], p2;
void search(int k, int x) {
  int i;
  if (x == a[k] - 1) {
    p2 = 1;
    return;
  }
  for (i = k - 1; i >= 1; i--)
    if (pp[i] == 0 && a[i] != a[k] - 1 && a[i] + x < a[k]) {
      pp[i] = 1;
      search(k, a[i] + x);
      if (p2 == 0) {
        pp[i] = 0;
      } else
        return;
    }
}
int main() {
  int t, n, i, p;
  {
    scanf("%d", &n);
    memset(pp, 0, sizeof(pp));
    for (i = 1; i <= n; i++) scanf("%d", &a[i]);
    sort(a + 1, a + 1 + n);
    for (i = 2; i <= n; i++)
      if (a[i] != a[i - 1]) break;
    num = i;
    for (i = num; i <= n; i++) {
      p2 = 0;
      search(i, 0);
      if (p2 == 0) break;
    }
    p = 0;
    for (i = 1; i < n; i++)
      if (pp[i] == 0) p = 1;
    if (p == 1)
      printf("NO\n");
    else
      printf("YES\n");
  }
  return 0;
}
