import java.io.*;
public class Main {
static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
public static void main(String[] args) throws IOException {
int n = sc.nextInt();
TrieTree t = new TrieTree();
while (n-- > 0) {
String s = sc.next();
t.insertTree(s);
}
int m = sc.nextInt();
while (m-- > 0) {
String s = sc.next();
int x = t.Contains(s);
if (x == 0) {
out.println("WRONG");
} else if (x == 1) {
out.println("OK");
} else if (x == 2) {
out.println("REPEAT");
}
}
out.flush();
out.close();
}
static class TrieTree {
TrieNode root;
public TrieTree() {
root = new TrieNode();
}
public void insertTree(String s) {
if (s.length() == 0) return;
char[] a = s.toCharArray();
TrieNode date = root;
for (char c : a) {
int index = c - 'a';
if (date.son[index] == null) {
date.son[index] = new TrieNode();
date.son[index].value = c;
}
date = date.son[index];
}
date.isTrue = 1;
}
public int Contains(String s) {
if (s.length() == 0) return 0;
char[] a = s.toCharArray();
TrieNode date = root;
for (char c : a) {
int index = c - 'a';
if (date.son[index] != null) {
date = date.son[index];
} else {
return 0;
}
}
int x = date.isTrue;
if (x == 1) {
date.isTrue++;
return 1;
} else if (x >= 2) {
return x;
}
return 0;
}
}
static class TrieNode {
char value;
TrieNode[] son;
int isTrue;
public TrieNode() {
son = new TrieNode[26];
isTrue = 0;
}
}
static class sc {
static final StreamTokenizer sc = new StreamTokenizer(new InputStreamReader(System.in));
static int nextInt() throws IOException {
sc.nextToken();
return (int) sc.nval;
}
static String next() throws IOException {
sc.nextToken();
return sc.sval;
}
}
}