Так как у Морти осталось ещё много купонов на приключения, то он решил потратить один из них на путешествие в измерение примитивной речи. Но когда Рик и Морти прибыли в него, то поняли, что совсем не понимают местный язык. Но для Рика это была не проблема, и вот через несколько минут у героев есть устройство, помогающее говорить на примитивном языке.
Через некоторое время Морти обнаружил странную особенность примитивного языка — некоторые слова можно заменять другими. Тогда Морти решил помочь жителям этого измерения и создать такой язык, который может быть получен из исходного путем замены некоторых слов, при этом в нем должно содержаться наименьшее количество слов (ведь он считает, что чем меньше слов, тем проще будет язык учить).
Всего в текущем языке $$$n$$$ слов, и известно, какие слова на какие можно заменять. Произвольным количеством замен приведите данный язык к языку, содержащему минимальное количество различных слов.
В первой строке даны два целых числа $$$n$$$ и $$$m$$$ — количество слов и возможных замен, соответственно ($$$1 \le n, m \le 2 \cdot 10^5$$$).
В следующих $$$n$$$ строках даны слова в примитивном языке, длина одного слова не более $$$10$$$, и гарантируется, что все слова различны.
В следующих $$$m$$$ строках даны пары слов $$$a_i$$$ и $$$b_i$$$, разделенные пробелом, означающие, что возможна замена слова $$$a_i$$$ на слово $$$b_i$$$.
В единственной строке выведите одно число — минимальное возможное количество слов в языке, который может получить Морти.
5 5helloworldfirstwordsecondhello worldworld firstworld secondsecond firstword world
1
В первом примере Морти может применить следующие преобразования, чтобы получить одно слово: hello $$$\to$$$ world, word $$$\to$$$ world, world $$$\to$$$ second, second $$$\to$$$ first. После таких преобразований в языке останется только одно слово: first.