rt
#include<iostream>
#include<cstdio>
using namespace std;
int a,b,c,d,e,n,flag;
int rem[1000][6],p;
char op[10];
int main()
{
// freopen("network.in","r",stdin);
// freopen("network.out","w",stdout);
cin >> n;
for(int i = 1; i <= n; i++)
{
cin >> op;
a = b = c = d = e = -1;
scanf("%d.%d.%d.%d:%d",&a,&b,&c,&d,&e);
if(a < 0 || b < 0 || c < 0 || d < 0 || e < 0)
{
cout << "ERR" << endl;
continue;
}
if(a > 255 || b > 255 || c > 255 || d > 255 || e > 65535)
{
cout << "ERR" << endl;
continue;
}
if(op[0] == 'S')
{
flag = 0;
for(int j = 1; j <= p; j++) if(a == rem[j][1] && b == rem[j][2]
&& c == rem[j][3] && d == rem[j][4] && e == rem[j][5])
{
flag = 1;
break;
}
if(flag == 0)
{
p++;
rem[p][1] = a;
rem[p][2] = b;
rem[p][3] = c;
rem[p][4] = d;
rem[p][5] = e;
rem[p][0] = i;
cout << "OK" << endl;
}
else cout << "FAIL" << endl;
}
else
{
flag = 0;
for(int j = 1; j <= p; j++) if(a == rem[j][1] && b == rem[j][2]
&& c == rem[j][3] && d == rem[j][4] && e == rem[j][5])
{
flag = rem[j][0];
break;
}
if(flag != 0) cout << flag << endl;
else cout << "FAIL" << endl;
}
}
return 0;
}