#include<bits/stdc++.h>
using namespace std;
int k[1005],l[1005],m[1005],n[1005],o[1005],flag2[1005];
int main()
{
// freopen("network.in","r",stdin);
// freopen("network.out","w",stdout);
string ch1,ch2;
char f,g,h,j;
int a=0,b=0,c=0,d=0,e=0,flag,s=0,t;
cin>>t;
for(int i=1;i<=t;i++)
{
a=0,b=0,c=0,d=0,e=0,flag=1;
cin>>ch1>>ch2;
if(ch2[0]==48) flag=1;
for(int p=0;p<ch2.size();p++)
{
if(ch2[p]=='.'||ch2[p]==':')
{
if(flag==1)
f=ch2[p];
if(flag==2)
g=ch2[p];
if(flag==3)
h=ch2[p];
if(flag==4)
j=ch2[p];
flag++;
}
if((ch2[p]==48&&ch2[p-1]=='.')||(ch2[p]==48&&ch2[p-1]==':'))
flag=1;
if(ch2[p]==48)
{
if(flag==1) a=a*10;
if(flag==2) b=b*10;
if(flag==3) c=c*10;
if(flag==4) d=d*10;
if(flag==5) e=e*10;
}
if(ch2[p]==49)
{
if(flag==1) a=a*10+1;
if(flag==2) b=b*10+1;
if(flag==3) c=c*10+1;
if(flag==4) d=d*10+1;
if(flag==5) e=e*10+1;
}
if(ch2[p]==50)
{
if(flag==1) a=a*10+2;
if(flag==2) b=b*10+2;
if(flag==3) c=c*10+2;
if(flag==4) d=d*10+2;
if(flag==5) e=e*10+2;
}
if(ch2[p]==51)
{
if(flag==1) a=a*10+3;
if(flag==2) b=b*10+3;
if(flag==3) c=c*10+3;
if(flag==4) d=d*10+3;
if(flag==5) e=e*10+3;
}
if(ch2[p]==52)
{
if(flag==1) a=a*10+4;
if(flag==2) b=b*10+4;
if(flag==3) c=c*10+4;
if(flag==4) d=d*10+4;
if(flag==5) e=e*10+4;
}
if(ch2[p]==53)
{
if(flag==1) a=a*10+5;
if(flag==2) b=b*10+5;
if(flag==3) c=c*10+5;
if(flag==4) d=d*10+5;
if(flag==5) e=e*10+5;
}
if(ch2[p]==54)
{
if(flag==1) a=a*10+6;
if(flag==2) b=b*10+6;
if(flag==3) c=c*10+6;
if(flag==4) d=d*10+6;
if(flag==5) e=e*10+6;
}
if(ch2[p]==55)
{
if(flag==1) a=a*10+7;
if(flag==2) b=b*10+7;
if(flag==3) c=c*10+7;
if(flag==4) d=d*10+7;
if(flag==5) e=e*10+7;
}
if(ch2[p]==56)
{
if(flag==1) a=a*10+8;
if(flag==2) b=b*10+8;
if(flag==3) c=c*10+8;
if(flag==4) d=d*10+8;
if(flag==5) e=e*10+8;
}
if(ch2[p]==57)
{
if(flag==1) a=a*10+9;
if(flag==2) b=b*10+9;
if(flag==3) c=c*10+9;
if(flag==4) d=d*10+9;
if(flag==5) e=e*10+9;
}
}
if(a>255||b>255||c>255||d>255||e>65535||f!='.'||g!='.'||h!='.'||j!=':')
flag=1;
if(flag!=1)
{
if(ch1=="Server")
{
int flag1=0;
for(int p=1;p<=s;p++)
{
if(a==k[p]&&b==l[p]&&c==m[p]&&d==n[p]&&e==o[p])
{
cout<<"FAIL"<<endl;
flag1=1;
}
}
if(flag1==0)
{
cout<<"OK"<<endl;
s++;
k[s]=a,l[s]=b,m[s]=c,n[s]=d,o[s]=e,flag2[s]=i;
}
}
else{
int flag1=0;
for(int p=1;p<=s;p++)
{
if(a==k[p]&&b==l[p]&&c==m[p]&&d==n[p]&&e==o[p])
{
cout<<flag2[p]<<endl;
flag1=1;
}
}
if(flag1==0) cout<<"FAIL"<<endl;
}
}
else cout<<"ERR"<<endl;
}
return 0;
}