Задачи
Файбер-Нет
Файбер-Нет
Несколько начинающих компаний решили создать лучший Интернет, который они назвали "Файбер-Нет". Они уже установили множество узлов, работающие как маршрутизаторы по всему миру. К сожалению, они не пришли к единому согласию по поводу соединительных проводов, поэтому пришлось каждой компании прокладывать свой набор проводов между определенным набором узлов.
Теперь поставщики услуг, которые хотят передать данные от узла \textbf{A} к узлу \textbf{B}, хотят выяснить, какая из компаний обеспечит необходимые подключения. Помогите провайдерам ответить на их вопросы.
\InputFile
Входные данные состоят из нескольких тестов. Каждый тест начинается с количества вершин \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{200}) сети. Завершаются входные данные строкой \textbf{n = 0}. Вершины пронумерованы числами \textbf{1}, ..., \textbf{n}. Далее следует набор соединений. Каждое соединение начинается парой чисел \textbf{A}, \textbf{B} (\textbf{1} ≤ \textbf{A}, \textbf{B} ≤ \textbf{n}) - начальная и конечная вершина однонаправленного соединения. Список соединений завершается строкой \textbf{A = B = 0}. Для каждого соединения после двух вершин следуют компании, имеющие соединение от \textbf{A} до \textbf{B}. Компания задается буквой нижнего регистра. Множество компаний, которые обладают заданным соединением, представляют собой слово из букв нижнего регистра.
За списком соединений в каждом тесте следует набор запросов. Каждый запрос задается двумя числами \textbf{A}, \textbf{B} (\textbf{1} ≤ \textbf{A}, \textbf{B} ≤ \textbf{n}) - начальная и конечная вершина запроса. Список (а с ним и сам тест) завершается строкой \textbf{A = B = 0}. Никакое соединение и никакой запрос не содержит одинаковых двух вершин.
\OutputFile
Для каждого запроса каждого теста вывести строку, содержащую список всех компаний, которые могут передать пакет данных по собственным соединениям от начальной вершины к конечной. Если таковых компаний не существует, то вывести "\textbf{-}". После каждого теста следует выводить пустую строку.
\includegraphics{https://static.e-olymp.com/content/e5/e5d58983bdf0b184426776fb8468b1135abe63d4.jpg}
Входные данные #1
3 1 2 abc 2 3 ad 1 3 b 3 1 de 0 0 1 3 2 1 3 2 0 0 2 1 2 z 0 0 1 2 2 1 0 0 0
Выходные данные #1
ab d - z -