#include <bits/stdc++.h>
using namespace std;
#define ll long long int
#define pb push_back
#define mp make_pair
#define deb(x) cout<< #x << " " << x << "\n";
#define MAX 9223372036854775807
#define MIN -9223372036854775807
#define PI 3.141592653589
#define setbits(n) __builtin_popcountll(n)
#define mkunique(a) a.resize(unique(a.begin(),a.end())-a.begin());
const ll mod=1e9+7;
 
 
int main() {
    
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    ll T=clock();
 
    vector<ll> a(4);
    for(ll i=0;i<4;i++)
        cin>>a[i];
    sort(a.begin(),a.end(),greater<ll>());
    if(a[0]+a[2]==a[1]+a[3] || a[0]+a[1]==a[2]+a[3] || a[0]+a[3]==a[1]+a[2] || a[0]==a[1]+a[2]+a[3])
        cout<<"Yes";
    else
        cout<<"No";

    
 
    
 
 
 
 
    cerr<<"\n\nTIME: "<<(double)(clock()-T)/CLOCKS_PER_SEC<<" sec\n";
    T = clock();
    return 0;
}
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pb push_back
#define ff first
#define ss second
#define pii pair<int,int>
#define pll pair<ll,ll>
#define mod 1000000007
#define rep(i,n) for(int i=0; i<n; i++)
#define repa(i,start,end) for(int i=start; i<=end; i++)
#define repd(i,start,end) for(int i=start; i>=end; i--)
#define all(x) x.begin(),x.end()
#define debug(x) cout << "(" << #x << ": " << x << ")" << endl;
void solve() {
    ll a,b,c,d;
    cin>>a>>b>>c>>d;
    if(a==b+c+d || a+b==c+d || a+c==b+d || c==a+b+d || a+b+c==d || b+c==a+d || b==a+c+d)
    {
        cout<<"Yes"<<endl;
    }
    else
    {
        cout<<"No"<<endl;
    }
}
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    solve();
}