#include <bits/stdc++.h>
using namespace std;
int main() {
  unordered_map<char, bool> M;
  M['A'] = 1;
  M['H'] = 1;
  M['I'] = 1;
  M['M'] = 1;
  M['O'] = 1;
  M['T'] = 1;
  M['U'] = 1;
  M['V'] = 1;
  M['W'] = 1;
  M['X'] = 1;
  M['Y'] = 1;
  string s;
  cin >> s;
  bool f = 1;
  for (int i = 0; i < s.size(); i++) {
    if (!M[s[i]]) {
      f = 0;
      break;
    }
  }
  if (f) {
    string aux = s;
    reverse(aux.begin(), aux.end());
    if (s == aux)
      cout << "YES" << endl;
    else
      cout << "NO" << endl;
  } else
    cout << "NO" << endl;
  return 0;
}
