魔法镜
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

在ACM王国的古老传说中,有一面神奇的魔法镜,只有能够念出"镜像咒语"的勇者,才能通过它的试炼,获得参加新生赛的资格。作为新生的大杨,也来到了这面魔法镜前……

魔法镜显示的咒语是一个由大写字母小写字母组成的字符串s。一个字符串能够通过魔法镜的试炼,当且仅当它满足镜像对称。镜像对称的规则如下:
1. 字符串被看作写在一条水平线上。
2. 字符串的图像必须关于某一条纵向垂直的对称轴对称。

镜像字符对的定义如下:
- 自身就是镜像(大写):A、H、I、M、O、T、U、V、W、X、Y
- 相互镜像:bdpq
- 自身就是镜像(小写):i、l、o、v、w、x

输入描述:

第一行包含一个非空字符串s(1 \leq |s| \leq 1000)

输出描述:

输出包含一行,如果 s 是镜像对称的,输出 "YES",否则输出 "NO"。
示例1

输入

复制
XOO

输出

复制
NO
示例2

输入

复制
AWA

输出

复制
YES
示例3

输入

复制
awa

输出

复制
NO
示例4

输入

复制
bOd

输出

复制
YES