Файндворд
Однією з літературних розваг є файндворд – текст, у якому на стиці двох слів можуть бути схвані інші слова. Наприклад, у тексті "Был месяц май. Кактус стоял на окне." сховано слово "майка".
Знайдіть усі схвані у тексті слова з заданого списку, якщо відокремлювачами слів тексту є пропуски, закінчення рядків та заданий набір розділових знаків.
Вхідні дані
У першому рядку знаходяться три цілих числа через не менше ніж 1 пропуск: k – число рядків тексту, (1 ≤ k ≤ 100), кожен рядок не більше 127 символов, n – число слів, які потрібно знайти, (1 ≤ n ≤ 100), і m – число розділових знаків (0 ≤ m ≤ 10), які можут розділяти слова. Наступні k рядків містять текст (який складаєся з рядкових та прописних букв латинського алфавіту, цифр, пропусків та розділових знаків із заданого набору). Потім у n рядках задано шукані слова (з того ж набору символів, крім пропусків і розділових знаків, довжина кожного рядка не більш 20 символів, усі слова у списку різні). Останній рядок складається з m символів, які слід вважатиь розділовими знаками (розідлові знаки у тексті можуть як відокремлюватись пропусками, так і не відокремлюватись).
Вихідні дані
Вивести знайдені слова, по одному в рядку, у тому ж порядку, в якому вони сховані у тексті (слово може бути сховано лише на стиці двх слів, а не всеедині іншого слова). Порядок слова визнчається по його першій букві. Якщо сховане слово зустрічається не один раз, то його слід виводити лише один раз, вважаючи його порядком те місце у тексті, де воно сховано вперше. Якщо у одному і тому ж місці схвано 2 слова, то виводити їх потірбно у тому порядку, у якому вони були у вхідному списку. Відомо, що хоча б одне з шуканих слів дійсно сховано.