#include <bits/stdc++.h>
using namespace std;
bool can[256];
string s;
bool palindr() {
  int l = 0, r = s.size() - 1;
  while (l <= r) {
    if (l > r) break;
    if (s[l] != s[r]) return false;
    if (!can[s[l]] || !can[s[r]]) return false;
    l++, --r;
  }
  return true;
}
int main() {
  can['A'] = true;
  can['H'] = true;
  can['I'] = true;
  can['M'] = true;
  can['O'] = true;
  can['T'] = true;
  can['U'] = true;
  can['V'] = true;
  can['W'] = true;
  can['X'] = true;
  can['Y'] = true;
  cin >> s;
  if (palindr()) {
    if (s.size() % 2 == 0) {
      cout << "YES";
    } else {
      int m = s.size() / 2;
      if (can[s[m]])
        cout << "YES";
      else
        cout << "NO";
    }
  } else {
    cout << "NO";
  }
  return 0;
}
