시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB111100.000%

문제

Рассмотрим строки, состоящие из первых $k$ букв английского алфавита. Некоторые пары букв называются коммутирующими: если они стоят рядом в строке, их разрешается поменять местами.

Даны пары коммутирующих букв и две строки равной длины $s$ и $t$. Требуется выяснить, можно ли получить $t$ из $s$, выполнив произвольное количество операций: поменять местами две рядом стоящие коммутирующие буквы.

입력

Первая строка содержит два целых числа $k$ и $n$ --- количество используемых букв и количество пар коммутирующих букв ($2 \le k \le 10$, $0 \le n \le k(k-1)/2$).

Следующие $n$ строк содержат по две буквы, не разделенные пробелом: пары коммутирующих букв. Гарантируется, что каждая пара приведена во вводе не более одного раза.

Следующие две строки содержат строки $s$ и $t$, они имеют равную длину $L$ ($1 \le L \le 100\,000$) и состоят из первых $k$ букв латинского алфавита.

출력

Выведите <<YES>>, если строку $t$ можно получить из строки $s$ описанными операциями. В противном случае выведите <<NO>>.

예제 입력 1

3 2
ab
bc
abbcabc
abcacbb

예제 출력 1

YES

예제 입력 2

3 2
ab
bc
abbcabc
aabbbcc

예제 출력 2

NO