Você encontrou um quebra-cabeça estranho em uma caixa de brinquedos antigos no sótão. Ele forma um tabuleiro retangular composto por $h \times w$ células quadradas. Algumas células têm um ladrilho colorido sobre elas, como mostra a Figura F.1.
Figura F.1: Os ladrilhos coloridos correspondem à disposição inicial da Entrada de Exemplo 1.
Você ainda não sabe qual é o objetivo exato do quebra-cabeça, mas começou a examinar maneiras de reorganizar os ladrilhos. A disposição pode ser alterada inclinando o tabuleiro em uma das quatro direções principais: para sua esquerda, para sua direita, em sua direção ou para longe de você. Ao inclinar, todos os ladrilhos deslizam na direção correspondente até serem bloqueados pela borda ou por outro ladrilho. Dadas uma disposição inicial e uma final, determine se existe alguma sequência de inclinações que transforma a primeira na segunda. A Figura F.2 ilustra as inclinações do quebra-cabeça da Entrada de Exemplo 1.
Figura F.2: Solução da Entrada de Exemplo 1.
Entrada
A primeira linha contém dois inteiros $h$ e $w$ ($1 \le h,w \le 500$), representando a altura e a largura do tabuleiro. Seguem $h$ linhas que fornecem a disposição inicial da linha superior à inferior. Cada uma contém uma string de comprimento $w$ descrevendo as células da esquerda para a direita. Uma célula vazia é indicada por um ponto (.). Se houver um ladrilho, sua cor é indicada por uma letra minúscula (a-z). Letras diferentes representam cores diferentes, e ladrilhos da mesma cor são indistinguíveis.
Após a disposição inicial, há uma linha vazia e então a descrição da disposição final, composta por $h$ linhas no mesmo formato.
Saída
Imprima yes se existir uma sequência de inclinações que transforma a disposição inicial na final, e no caso contrário.
Exemplos
Entrada 1
4 4 .r.. rgyb .b.. .yr. yrbr ..yr ...g ...b
Saída 1
yes
Entrada 2
1 7 ....x.. ..x....
Saída 2
no
Entrada 3
4 3 yr. ..b ry. b.. ... ..b .ry byb
Saída 3
no