eolymp
bolt
Try our new interface for solving problems
Problems

Прямоугольное поле

Прямоугольное поле

Time limit 1 second
Memory limit 64 MiB

Дано прямоугольное поле, состоящее из свободных клеток и занятых. Из каждой свободной клетки можно перейти в любую свободую, соседнюю с ней по стороне. Определить, можно ли пройти из клетки A в клетку C, пройдя через клетку B. Причем не разрешается выходить за пределы поля, проходить через занятые клетки и проходить более одного раза через одну клетку.

Input data

Два числа R и C (1R, C100) - размеры поля. Далее R строк по C символов в каждой - описание клеток. Каждая клетка может быть либо '.' (свободной), либо '#' (занятой), либо контрольной точкой 'A', 'B' или 'C'. Каждый из символов 'A', 'B' и 'C' встречается в описании ровно один раз.

Output data

Вывести "Yes", если искомый путь существует, иначе - "No".

Examples

Input example #1
4 4
A...
.##.
.##B
C...
Output example #1
Yes
Source III International Summer School Programming in Sevastopol 2012