#include <bits/stdc++.h>
using namespace std;
bool p[1000001];
vector<int> v;
void sieve() {
  for (int i = 4; i <= 1000000; i += 2) p[i] = 1;
  for (int i = 3; i <= sqrt(1000000); i += 2) {
    if (p[i] == 0) {
      for (int j = i * i; j <= 1000000; j += i) p[j] = 1;
    }
  }
  for (int i = 2; i <= 1000000; i++) {
    if (p[i] == 0) {
      v.push_back(i);
    }
  }
}
long long POW(long long b, long long a) {
  long long res = 1;
  for (long long i = 1; i <= a; i++) {
    res = res * b;
  }
  return res;
}
int main() {
  int n, a, b, c, d;
  cin >> a >> b >> c >> d;
  int tot = a + b + c + d;
  if (tot % 2) {
    cout << "NO";
    return 0;
  }
  tot /= 2;
  if (a + b == tot)
    cout << "YES";
  else if (a + c == tot)
    cout << "YES";
  else if (a + d == tot)
    cout << "YES";
  else if (b + c == tot)
    cout << "YES";
  else if (b + d == tot)
    cout << "YES";
  else if (a + b + c == tot)
    cout << "YES";
  else if (a + b + d == tot)
    cout << "YES";
  else if (a + c + d == tot)
    cout << "YES";
  else if (a + d == tot)
    cout << "YES";
  else if (b + c + d == tot)
    cout << "YES";
  else
    cout << "NO";
  return 0;
}
