#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100100;
const int MAXC = 26;
char str[MAXN];
char rev[MAXN];
int N;
bool equiv[MAXC];
int main() {
  equiv['A' - 'A'] = true;
  equiv['H' - 'A'] = true;
  equiv['I' - 'A'] = true;
  equiv['M' - 'A'] = true;
  equiv['O' - 'A'] = true;
  equiv['T' - 'A'] = true;
  equiv['U' - 'A'] = true;
  equiv['V' - 'A'] = true;
  equiv['W' - 'A'] = true;
  equiv['X' - 'A'] = true;
  equiv['Y' - 'A'] = true;
  cin >> str;
  N = strlen(str);
  for (int i = 0; i < N; ++i) {
    rev[i] = str[i];
  }
  reverse(rev, rev + N);
  for (int i = 0; i < N; ++i) {
    if (str[i] != rev[i] || (str[i] == rev[i] && !equiv[str[i] - 'A'])) {
      cout << "NO\n";
      return 0;
    }
  }
  cout << "YES\n";
  return 0;
}
