Zoe 和她的朋友们非常喜欢玩 Wordle,他们决定合作来解开每日谜题。
Wordle 是一款游戏,玩家有六次机会猜测一个隐藏的 5 字母单词。每猜一个词,系统会用三种反馈颜色之一标记每个字母:
- 绿色 (Green) - 该字母在单词中且位置正确。
- 黄色 (Yellow) - 该字母在单词中,但位置不正确。
- 灰色 (Gray) - 该字母不在隐藏单词中(重复字母的情况除外,见下文)。
注意,重复字母的处理比较复杂。首先,标记所有绿色字母。对于某个特定字母,假设隐藏单词中有 $X$ 个非绿色出现次数,猜测单词中有 $Y$ 个非绿色出现次数。该字母的非绿色出现中,最左侧的 $\min(X, Y)$ 个将被标记为黄色,其余的将被标记为灰色。
例如,如果隐藏单词是 FREED,猜测单词是 GEESE,反馈将显示第二个 E(第三个字母)为绿色,而第一个和第三个 E(GEESE 的第二个和第五个字母)分别显示为黄色和灰色。
已知所有可猜测单词的列表,请帮助 Zoe 根据他们之前的猜测确定哪些单词仍然是有效的。
输入格式
第一行包含两个整数 $N$ ($1 \le N \le 10$) 和 $W$ ($1 \le W \le 10^4$),分别表示 Zoe 和她的朋友们已经做出的猜测次数,以及可猜测单词的数量。
接下来的 $N$ 行描述猜测。每行包含两个 5 字母字符串 $g$ 和 $f$。第一个字符串 $g$ 是猜测的单词,仅由大写英文字母组成,且在可猜测单词列表中。第二个字符串 $f$ 是反馈,由字符 G、Y 和 - 组成,分别表示猜测结果的绿色、黄色和灰色。
最后 $W$ 行描述不同的可猜测单词列表。每行包含一个由大写英文字母组成的 5 字母字符串。
输出格式
按可猜测单词列表中出现的顺序,显示所有有效的单词。保证至少存在一个有效单词。
样例
输入格式 1
2 5 BERRY -G--- APPLE ---YY MELON BERRY LEMON LIMES APPLE
输出格式 1
MELON LEMON
输入格式 2
3 5 BERRY -G--- APPLE ---YY LIMES G-GY- APPLE BERRY LEMON LIMES MELON
输出格式 2
LEMON
输入格式 3
3 5 BLANK --Y-- SIGHS ----G STORM YGG-Y ATOMS BLANK MOATS SIGHS STORM
输出格式 3
ATOMS
输入格式 4
4 5 FRUIT -G--Y NUTTY --Y-- ROOTS Y--YG SEEDS -YG-G FRUIT NUTTY ROOTS SEEDS TREES
输出格式 4
TREES