#include <bits/stdc++.h>
#pragma GCC optimization("O3")
#pragma GCC optimization("unroll-loops")
#pragma GCC target("avx2")
using namespace std;
const long long MOD = 1e9 + 7;
const double PI = atan2(0, -1);
const long long inf = 1e9 + 10;
const long long infl = 2e18;
const double eps = 1e-7;
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  cout << setprecision(20) << fixed;
  vector<long long> a(4);
  for (long long i = 0; i < 4; i++) cin >> a[i];
  sort(a.begin(), a.end());
  if (a[0] + a[3] == a[1] + a[2] or a[0] + a[1] + a[2] == a[3] or
      a[0] + a[1] == a[2] + a[3])
    cout << "YES";
  else
    cout << "NO";
}
