#include <iostream>
#include <cstring>
using namespace std;
struct Name
{
int cnt;
char m_name[50];
};
void Sorting(Name* X, int n);
Name* Searching(Name* X, char* s, int head, int tail);
int main()
{
int n, m;
cin >> n;
Name* List = new Name[n];
for (int i = 0; i < n; ++i)
{
cin >> List[i].m_name;
List[i].cnt = 0;
}
Sorting(List, n);
char str[50] = { '\0' };
cin >> m;
for (int i = 0; i < m; ++i)
{
cin >> str;
Name* p = Searching(List, str, 0, n - 1);
if (p == NULL)
cout << "WRONG" << endl;
else if (p->cnt == 1)
cout << "OK" << endl;
else if (p->cnt >= 2)
cout << "REPEAT" << endl;
}
delete[]List;
return 0;
}
void Sorting(Name* X, int n)
{
char temp[50] = { '\0' };
int i, min;
for (i = 0; i < n - 1; ++i)
{
min = i;
for (int j = i + 1; j < n; ++j)
{
if (strcmp(X[min].m_name, X[j].m_name) == 1)
min = j;
}
if (min != i)
{
strcpy(temp, X[i].m_name);
strcpy(X[i].m_name, X[min].m_name);
strcpy(X[min].m_name, temp);
}
}
}
Name* Searching(Name* X, char* s, int head, int tail)
{
int mid = (head + tail) / 2;
if (head > tail)
return NULL;
if (strcmp(X[mid].m_name, s) == 0)
{
++X[mid].cnt;
return &X[mid];
}
else if (strcmp(X[mid].m_name, s) == -1)
return Searching(X, s, mid + 1, tail);
else if (strcmp(X[mid].m_name, s) == 1)
return Searching(X, s, head, mid - 1);
}