A. Замена чисел
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Массив из целых чисел $$$a_1, a_2, \ldots, a_n$$$ преобразуется в массив из строчных букв латинского алфавита с помощью следующей процедуры.

Пока в массиве есть хотя бы одно число:

  • Выбрать произвольное число $$$x$$$ из массива $$$a$$$, и произвольную букву латинского алфавита $$$y$$$.
  • Заменить все все вхождения числа $$$x$$$ на букву $$$y$$$.

Например, если изначально был массив $$$a = [2, 3, 2, 4, 1]$$$, то его могли преобразовать следующим образом:

  • Выбрать число $$$2$$$ и букву c. После этого $$$a = [c, 3, c, 4, 1]$$$.
  • Выбрать число $$$3$$$ и букву a. После этого $$$a = [c, a, c, 4, 1]$$$.
  • Выбрать число $$$4$$$ и букву t. После этого $$$a = [c, a, c, t, 1]$$$.
  • Выбрать число $$$1$$$ и букву a. После этого $$$a = [c, a, c, t, a]$$$.

После преобразования все получившиеся буквы объединяются в строку, в нашем примере получилось бы строка «cacta».

По данному массиву $$$a$$$ и строке $$$s$$$ определите, могла ли строка $$$s$$$ получиться из массива $$$a$$$ после описанного преобразования?

Входные данные

В первой строке входных данных задано целое число $$$t$$$ $$$(1 \leq t \leq 10^3$$$) — количество наборов входных данных.

Далее следуют описания наборов входных данных.

В первой строке каждого набора входных данных содержится целое число $$$n$$$ ($$$1 \leq n \leq 50$$$) — длина массива $$$a$$$ и строки $$$s$$$.

Во второй строке каждого набора входных данных содержится ровно $$$n$$$ целых чисел: $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \leq a_i \leq 50$$$) — элементы массива $$$a$$$.

В третьей строке каждого набора входных данных содержится строка $$$s$$$ длины $$$n$$$, состоящая из строчных латинских букв.

Выходные данные

Для каждого набора входных данных выведите «YES», если из массива $$$a$$$ можно получить строку $$$s$$$, и «NO» иначе. Вы можете выводить каждую букву в любом регистре.

Пример
Входные данные
7
5
2 3 2 4 1
cacta
1
50
a
2
11 22
ab
4
1 2 2 1
aaab
5
1 2 3 2 1
aaaaa
6
1 10 2 9 3 8
azzfdb
7
1 2 3 4 1 1 2
abababb
Выходные данные
YES
YES
YES
NO
YES
YES
NO
Примечание

Первый набор данных соответствует примеру, описанному в условии.

Во втором наборе входных данных можно выбрать число $$$50$$$ и букву a.

В третьем наборе входных данных можно выбрать число $$$11$$$ и букву a, после чего $$$a = [a, 22]$$$. После этого выбрать число $$$22$$$ и букву b и получить $$$a = [a, b]$$$.

В пятом наборе входных данных можно по очереди заменить все числа на букву a.