#include <bits/stdc++.h>
using namespace std;

#ifndef ONLINE_JUDGE
#include "algo/debug.h"
#define debug(x...) cerr << "[" << #x << "] = ["; _print(x)
#else
#define debug(x...)
#endif

#define int long long

void solve() {
	int n;
	cin >> n;
	multiset<int> s, _s;

	for (int i = 0, x; i < n; i++) {
		cin >> x;
		if (x >= 0) {
			s.insert(x);
		} else {
			_s.insert(x);
		}
	}

	while (1) {
		if (s.size() > 0 && _s.size() > 0) {
			int v1 = *s.begin();
			int v2 = *(--_s.end());
			int nxt = v1 + v2;

			s.erase(s.find(v1));
			_s.erase(_s.find(v2));

			if (nxt >= 0) {
				s.insert(nxt);
			} else {
				_s.insert(nxt);
			}
		} else {
			if (s.size()) {
				if (s.size() == 1) {
					cout << "Yes\n";
				} else {
					int v1 = *s.begin();
					int v2 = *(--s.end());
					if (v1 == 0 && v2 == 0) {
						cout << "Yes\n";
					} else {
						cout << "No\n";
					}
				}
				return;
			} else {
				if (_s.size() == 1) {
					cout << "Yes\n";
				} else {
					cout << "No\n";
				}
				return;
			}
		}
	}



}

signed main() {
#ifndef ONLINE_JUDGE
	freopen("input.txt", "r", stdin);
	freopen("output.txt", "w", stdout);
#else
#endif
	ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);

	int t = 1;
	//cin >> t;

	while (t--) {
		solve();
	}

	// cerr << "Time elapsed: " << ((long double)clock() / CLOCKS_PER_SEC) << " s.\n";
}