Виталик работает на складе. Склад можно представить как поле размером n × m клеток, каждая из которых либо свободна, либо занята контейнером, причем из любой свободной клетки склада можно добраться до любой другой, перемещаясь только между соседними по стороне клетками. Кроме того, на складе находятся два робота. Каждый из них находится в некоторой свободной клетке, и эти клетки различны.
Виталик хочет поменять роботов местами. Роботы могут передвигаться только по свободным клеткам, имеющим общую сторону, кроме того, они не могут одновременно находиться в одной и той же клетке склада или проходить друг сквозь друга. Определить, удастся ли Виталику осуществить свой замысел.
Первая строка содержит два натуральных числа n и m через пробел (2 ≤ n·m ≤ 200000) — размеры склада.
Следующие n строк содержат по m символов каждая. j-й символ i-й строки равен «.», если соответствующая клетка склада свободна, «#», если в ней находится контейнер, «1», если там стоит первый робот, и «2», если там стоит второй робот. Символы «1» и «2» встречаются в этих строках ровно по одному разу.
Выедите «YES» (без кавычек), если роботов можно поменять местами, и «NO» (без кавычек), если этого сделать не удастся.
5 3
###
#1#
#.#
#2#
###
NO
3 5
#...#
#1.2#
#####
YES
| Название |
|---|


