https://codeforces.com/problemset/problem/798/A
#include<bits/stdc++.h>
using namespace std;
int main(void)
{
string s; cin>>s;
int n=s.size();
int cnt=0;
for(int i=0;i<n/2;i++)
{
if(s[i]!=s[n-1-i]) cnt++;
}
if(cnt==1) puts("YES");//只有一个不对称
else if(cnt==0&&n&1) puts("YES");//或者说是没有不对称的,它是个奇数改中间即可
else puts("NO");
}