Walter 正在曾祖父的农场度假。外面下着雨,雨一直下个不停。Walter 坐在古老谷仓的阁楼里,在一堆积满灰尘的杂物中发现了一副旧扑克牌。这些牌看起来既古老又有趣。他开始把牌一张一张地并排放在地板上,突然他注意到它们的排列似乎存在某种规律。许多相邻的牌对要么点数相同,要么花色相同。“这可能是一个不错的小谜题,”Walter 心想,“不知道我能不能重新排列这个序列,使得每两张相邻的牌要么点数相同,要么花色相同。但等等,这副牌看起来不完整,这可能会严重限制排列的可能性,嗯……”
请帮助 Walter 判断他的谜题是否可解。
输入格式
输入包含多组测试数据。每组测试数据占一行,列出了牌堆中的所有牌。该行以一个整数 $L$ ($1 \le L \le 52$) 开头,表示牌堆中牌的数量,随后是一个空格和 $L$ 个牌的描述。每张牌由一个双字符字符串描述。第一个字符表示牌的点数(“A”=Ace,“2”–“9”代表对应数字,“X”=10,“J”=Jack,“Q”=Queen,“K”=King),第二个字符表示牌的花色(“C”=Clubs/梅花,“D”=Diamonds/方块,“H”=Hearts/红桃,“S”=Spades/黑桃)。相邻的牌描述之间用一个空格隔开。
输出格式
对于每组测试数据,如果谜题可解,则输出一行字符串 “YES”;如果谜题不可解,则输出一行字符串 “NO”。
样例
输入 1
8 2C 2D 2H 2S XC JS QS KS 4 5C 4H AS 9D
输出 1
YES NO