#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e6 + 100;
long long a[MAXN], b[MAXN], last[MAXN];
long long n, x, y, k, z, t, m, d, c, mod = 1e9 + 7, sum, mx, pos;
string h, s, l, sss[MAXN], ss;
pair<long long, long long> pr[MAXN];
vector<long long> v;
bool mark[MAXN], pass[MAXN];
long long gcd(long long a, long long b) {
  if (a % b == 0) {
    return b;
  }
  return gcd(b, a % b);
}
int main() {
  cin >> n >> m >> k;
  if (n == 1 || m == 1 || k == 1) {
    cout << "YES";
    return 0;
  }
  if ((n == 2 && m == 2) || (n == 2 && k == 2) || (k == 2 && m == 2)) {
    cout << "YES";
    return 0;
  }
  if (n == 3 && m == 3 && k == 3) {
    cout << "YES";
    return 0;
  }
  if ((n == 2 && m == 4 && k == 4) || (n == 4 && m == 2 && k == 4) ||
      (n == 4 && m == 4 && k == 2)) {
    cout << "YES";
    return 0;
  }
  cout << "NO";
  return 0;
}
