#include <iostream>
using namespace std;
string isPalindrome(string word,bool print){
print = false;
if(word.length() < 2) {
print = true;
if (print==1)
cout << "YES" << endl;
else
cout << "NO" << endl;
}else if(word[0] == word[word.length() - 1]){
return isPalindrome(word.substr(1, word.length() - 2),print);
}
if (print==1)
cout << "YES" << endl;
else
cout << "NO" << endl;
}
int main()
{
string a;
bool b;
cin >> a;
cout << isPalindrome(a,b);
/*if (isPalindrome(a,b)==1)
cout << "ITS A PALINDROME :)" << endl;
else
cout << "ITS NOT:(" << endl;
*/
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cmluZyBpc1BhbGluZHJvbWUoc3RyaW5nIHdvcmQsYm9vbCBwcmludCl7CgkJcHJpbnQgPSBmYWxzZTsKICAgIGlmKHdvcmQubGVuZ3RoKCkgPCAyKSB7CgkJcHJpbnQgPSB0cnVlOwogICAgICAgICBpZiAocHJpbnQ9PTEpCgkJY291dCA8PCAiWUVTIiA8PCBlbmRsOwoJCWVsc2UgCgkJY291dCA8PCAiTk8iIDw8IGVuZGw7CiAgICB9ZWxzZSBpZih3b3JkWzBdID09IHdvcmRbd29yZC5sZW5ndGgoKSAtIDFdKXsKICAgICAgICByZXR1cm4gaXNQYWxpbmRyb21lKHdvcmQuc3Vic3RyKDEsIHdvcmQubGVuZ3RoKCkgLSAyKSxwcmludCk7CiAgICB9CiAgICAKICAgCiAgICBpZiAocHJpbnQ9PTEpCgkJY291dCA8PCAiWUVTIiA8PCBlbmRsOwogICBlbHNlIAoJCWNvdXQgPDwgIk5PIiA8PCBlbmRsOwoJCQp9CgoKaW50IG1haW4oKQp7CglzdHJpbmcgYTsKCWJvb2wgIGI7CgkKCWNpbiA+PiBhOwoJCgljb3V0IDw8IGlzUGFsaW5kcm9tZShhLGIpOwoJCgkvKmlmIChpc1BhbGluZHJvbWUoYSxiKT09MSkKCQljb3V0IDw8ICJJVFMgQSBQQUxJTkRST01FIDopIiA8PCBlbmRsOwoJZWxzZSAKCQljb3V0IDw8ICJJVFMgTk9UOigiIDw8IGVuZGw7CgkqLwoJCgkKCQpyZXR1cm4gMDsKfQ==