#include <iostream>
using namespace std;
void inp_mas (int m[])
{
int N;
N=0;
while(cin>>m[N])
N++;
}
void bubble(int m[], int N)
{
for(int i=0;i<N+1; i++)
for(int j=0; j<N; j++)
if(m[j]>m[j+1])
swap(m[j],m[j+1]);
}
bool checker(int m[], int N)
{
int diff;
diff=m[1]-m[0];
for(int i=0;i<N;i++)
{
if((m[i+1]-m[i])!=diff)
return false;
}
return true;
}
int m[100000];
int main()
{
int N;
inp_mas(m);
bubble(m,N);
if(checker(m,N))
cout<<"YES";
else cout<<"NO";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp2b2lkIGlucF9tYXMgKGludCBtW10pCnsKICAgIGludCBOOwogICAgTj0wOwogICAgd2hpbGUoY2luPj5tW05dKQogICAgIE4rKzsKfQp2b2lkIGJ1YmJsZShpbnQgbVtdLCBpbnQgTikKewogICAgZm9yKGludCBpPTA7aTxOKzE7IGkrKykKICAgICAgICBmb3IoaW50IGo9MDsgajxOOyBqKyspCiAgICAgICAgICAgIGlmKG1bal0+bVtqKzFdKQogICAgICAgICAgICAgICAgc3dhcChtW2pdLG1baisxXSk7Cn0KCmJvb2wgY2hlY2tlcihpbnQgbVtdLCBpbnQgTikKewogICAgaW50IGRpZmY7CiAgICBkaWZmPW1bMV0tbVswXTsKICAgIGZvcihpbnQgaT0wO2k8TjtpKyspCiAgICB7CiAgICAgICAgaWYoKG1baSsxXS1tW2ldKSE9ZGlmZikKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgcmV0dXJuIHRydWU7Cn0KaW50IG1bMTAwMDAwXTsKaW50IG1haW4oKQp7CiAgICBpbnQgTjsKICAgIGlucF9tYXMobSk7CiAgICBidWJibGUobSxOKTsKICAgIGlmKGNoZWNrZXIobSxOKSkgCiAgICAgY291dDw8IllFUyI7CiAgICBlbHNlIGNvdXQ8PCJOTyI7CiAgICByZXR1cm4gMDsKfQ==