У Ивана была строка s, состоящая из строчных букв латинского алфавита. Но его подруга Юля решила пошутить над ним и спрятала строку s. Иван решил, что не будет искать строку, а просто сделает новую.
Иван помнит о строке s следующую информацию. Он помнит, что строка ti встречается в строке s количество раз ki или больше, а также помнит ровно ki позиций, с которых начинается вхождение строки ti в строку s — это позиции xi, 1, xi, 2, ..., xi, ki. При этом количество строк ti, про которые помнит Иван, равно n.
Перед вами стоит задача восстановить лексикографически минимальную строку s такую, что она удовлетворяет всей информации, которую помнит Иван. Как строки ti, так и строка s могут содержать только строчные буквы латинского алфавита.
В первой строке следует целое число n (1 ≤ n ≤ 105) — количество строк, о которых помнит Иван.
В следующих n строках следует информация о строках, которые помнит Иван. В i-й строке сначала следует непустая строка ti, затем следует положительное число ki, равное количество раз, которые строка ti встречается в строке s как минимум, а затем следует ki различных целых положительных чисел xi, 1, xi, 2, ..., xi, ki в возрастающем порядке — позиции, в которых начинаются вхождения строки ti в строку s. Гарантируется, что сумма длин строк ti не превосходит 106, 1 ≤ xi, j ≤ 106, 1 ≤ ki ≤ 106, а сумма всех ki не превосходит 106. Среди строк ti могут встречаться повторяющиеся.
Гарантируется, что входные данные непротиворечивы и ответ всегда существует.
Выведите лексикографически минимальную строку, которая удовлетворяет всей информации, которую помнит Иван.
3
a 4 1 3 5 7
ab 2 1 5
ca 1 4
abacaba
1
a 1 3
aaa
3
ab 1 1
aba 1 3
ab 2 3 5
ababab
Название |
---|