/**
*    author:  AdityaHulk     
**/
#include "bits/stdc++.h"
using namespace std;
#define int                 long long 
#define rep(i,a,b)          for(int i=a;i<b;++i)
#define rev(i,a,b)          for(int i=a;i>=b;--i)
#define nl                  '\n'
#define sz(x)               (int)((x).size())
#define pb                  push_back
#define ppb                 pop_back
#define pf(v,x)             v.insert(v.begin(),x)
#define ppf(v)              v.erase(v.begin());
#define ff                  first
#define ss                  second
#define all(x)              (x).begin(),(x).end()
#define uniq(v)             (v).erase(unique(all(v)),(v).end())
#define pii                 pair<int,int>
#define vi                  vector<int> 
#define vii                 vector<vector<int>>
#define revsort(x)          sort(all(x),greater<int>())
#define map                 map<int,int>
#define umap                unordered_map<int,int>
#define input(n,a)          int n; cin>>n; vi a(n); rep(i,0,n){ cin>>a[i];}
#define output(n,a)         rep(i,0,n){ cout<<a[i]<<" ";}

void Solution(){
    // printf("Specilist Soon\n");
    vi a(3); rep(i,0,3){ cin>>a[i];}
    sort(all(a));
    cout<<((a[2]-a[1])==(a[1]-a[0])? "Yes":"No")<<nl;
    


}

signed main(){

    ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); 
    int tc(1); 
    // cin>>tc;
    for(int test=1; test<=tc; ++test){         
        // printf("Case #%lld: ",test);
        Solution();
        } 
    }

#include<bits/stdc++.h>
using namespace std;
int main(){
        int a[3];
        for(int i=0;i<3;i++)cin>>a[i];
        sort(a,a+3);
        if(a[0]+a[2]==2*a[1])puts("Yes");
        else puts("No");
        return 0;
}