#include <bits/stdc++.h>
const double eps = 1e-8;
const int oo = 0x3f3f3f3f;
using namespace std;
string s;
bool read() {
  if (!(cin >> s)) return false;
  return true;
}
bool isPal() {
  string nova = s;
  reverse(nova.begin(), nova.end());
  return s == nova;
}
bool isMirrored() {
  set<char> M = {'A', 'H', 'I', 'M', 'O', 'T', 'U', 'V', 'W', 'X', 'Y'};
  for (int i = 0; i < s.length(); i++) {
    if (!M.count(s[i])) {
      return false;
    }
  }
  return true;
}
void process() {
  if (isMirrored() && isPal()) {
    cout << "YES" << endl;
  } else {
    cout << "NO" << endl;
  }
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int t = -1;
  while (t-- && read()) {
    process();
  }
  return 0;
}
