#include <bits/stdc++.h>
using namespace std;
bool mirror(string s) {
  unordered_set<char> symmetric = {'A', 'H', 'I', 'M', 'O', 'T',
                                   'U', 'V', 'W', 'X', 'Y'};
  int n = s.length();
  for (int i = 0; i < n; i++)
    if (symmetric.find(s[i]) == symmetric.end()) return false;
  string rev = s;
  reverse(rev.begin(), rev.end());
  if (s == rev)
    return true;
  else
    return false;
}
int main() {
  string str;
  cin >> str;
  if (mirror(str)) {
    cout << "YES" << endl;
  } else {
    cout << "NO" << endl;
  }
}
