#include <bits/stdc++.h>
using namespace std;
char ch[100010];
int flag[26];
int main() {
  while (~scanf("%s", ch)) {
    memset(flag, 0, sizeof(flag));
    flag[0] = 1;
    flag['H' - 'A'] = 1;
    flag['I' - 'A'] = 1;
    flag['M' - 'A'] = 1;
    flag['O' - 'A'] = 1;
    flag['T' - 'A'] = 1;
    flag['U' - 'A'] = 1;
    flag['V' - 'A'] = 1;
    flag['W' - 'A'] = 1;
    flag['X' - 'A'] = 1;
    flag['Y' - 'A'] = 1;
    int len = strlen(ch);
    int flag1 = 0;
    for (int i = 0; i < len; i++) {
      if (!flag[ch[i] - 'A']) {
        flag1 = 1;
        break;
      }
    }
    if (flag1) {
      printf("NO\n");
    } else {
      string str;
      str = ch;
      reverse(str.begin(), str.end());
      for (int i = 0; i < len; i++) {
        if (str[i] != ch[i]) {
          flag1 = 1;
          break;
        }
      }
      if (flag1) {
        printf("NO\n");
      } else {
        printf("YES\n");
      }
    }
  }
  return 0;
}
