#12,#13,#18,#19,#20错误答案,本人看不出来,求助
#include <iostream>
#include <cstdio>
using namespace std;
string c1[1001],d1[1001],ans[1001];
int c2[1001],d2[1001];
int lena,lenb;
bool pd(string s)
{
int t=0,ans=0;
for(int i=0;i<s.size();i++)
{
if(s[i]>='0'&&s[i]<='9') t=t*10+s[i]-'0';
else
{
if(s[i]=='.'||s[i]==':')
{
if(s[i+1]=='0'&&s[i+2]>='0'&&s[i+2]<='9') return false;
ans++;
if(s[i]=='.'&&ans>3) return false;
if(s[i]==':'&&ans<4) return false;
if(ans==5)
{
if(t<0||t>65535)
return false;
}
if(ans<5)
{
if(t<0||t>255)
return false;
}
t=0;
}
}
}
if(ans==4)
{
if(t<0||t>65536)
return false;
}
return true;
}
void jia1(string s,int k)
{
for(int i=1;i<=lena;i++)
if(c1[i]==s)
{
ans[k]="FAIL";
return;
}
ans[k]="OK";
c1[++lena]=s;
c2[lena]=k;
return;
}
string chai(int x)
{
int y=x,len;
string a,b;
do
{
a=a+char(y%10+'0');
y/=10;
}
while(y!=0);
len=a.size();
for(int i=0;i<len/2;i++)
{
char t=a[i];
a[i]=a[len-i-1];
a[len-i-1]=t;
}
return a;
}
int main()
{
int n;
string a,b;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a>>b;
if(!pd(b))
{
ans[i]="ERR";
continue;
}
if(a=="Server") jia1(b,i);
if(a=="Client")
{
d1[++lenb]=b,d2[lenb]=i,ans[i]="FAIL";
for(int j=1;j<=lena;j++)
if(d1[lenb]==c1[j])
ans[d2[lenb]]=chai(c2[j]);
}
}
for(int i=1;i<=n;i++)
cout<<ans[i]<<endl;
return 0;
}