#include <bits/stdc++.h>
using namespace std;
bool exists(int x, vector<int> &v) {
  for (int e : v) {
    if (e == x) return true;
  }
  return false;
}
int main() {
  int n;
  cin >> n;
  priority_queue<int> a;
  for (int i = 0; i < n; i++) {
    int in;
    cin >> in;
    a.push(in);
  }
  bool result = false;
  if (a.top() == 0) {
    result = true;
  } else if (n % 3 == 0) {
    int t = a.top();
    for (int i = 0; i < n / 3 - 1; i++) a.pop();
    int b = a.top();
    a.pop();
    if (t == b) {
      t = a.top();
      if (t != 0) {
        for (int i = 0; i < n / 3 - 1; i++) a.pop();
        b = a.top();
        a.pop();
        if (t == b) {
          t = a.top();
          for (int i = 0; i < n / 3 - 1; i++) a.pop();
          b = a.top();
          if (t == b) result = true;
        }
      }
    }
  }
  cout << (result ? "Yes" : "No") << '\n';
  return 0;
}
