#include<bits/stdc++.h>
using namespace std;
int t,k1[1005],k2[1005],k3[1005],k4[1005],k5[1005],cnt=0;
int main(){
cin>>t;
for(int i=1;i<=t;i++){
string op,a;
cin>>op>>a;
int s1,e1,s2,e2,s3,e3,s4,e4,s5,e5;
s1=0;
int cnt1=0,cnt2=0,cnt3=0,cnt4=0,cnt5=0;
for(int j=0;j<a.size();j++){
if(a[j]<'0'||a[j]>'9'){
e1=j-1;
break;
}
}
s2=e1+2;
for(int j=s2;j<a.size();j++){
if(a[j]<'0'||a[j]>'9'){
e2=j-1;
break;
}
}
s3=e2+2;
for(int j=s3;j<a.size();j++){
if(a[j]<'0'||a[j]>'9'){
e3=j-1;
break;
}
}
s4=e3+2;
for(int j=s4;j<a.size();j++){
if(a[j]<'0'||a[j]>'9'){
e4=j-1;
break;
}
}
s5=e4+2;
e5=a.size()-1;
if(op=="Server"){
if((a[s1]=='0'&&(e1-s1+1)>1)||(a[s2]=='0'&&(e2-s2+1)>1)||(a[s3]=='0'&&(e3-s3+1)>1)||(a[s4]=='0'&&(e4-s4+1)>1)||(a[s5]=='0'&&(e5-s5+1)>1)){
cout<<"ERR"<<endl;
continue;
}
if(a[e1+1]!='.'||a[e2+1]!='.'||a[e3+1]!='.'||a[e4+1]!=':'){
cout<<"ERR"<<endl;
continue;
}
if(a[s1]=='-'||a[s2]=='-'||a[s3]=='-'||a[s4]=='-'||a[s5]=='-'){
cout<<"ERR"<<endl;
continue;
}
for(int j=s1;j<=e1;j++){
cnt1=cnt1*10+int(a[j]-'0');
}
for(int j=s2;j<=e2;j++){
cnt2=cnt2*10+int(a[j]-'0');
}
for(int j=s3;j<=e3;j++){
cnt3=cnt3*10+int(a[j]-'0');
}
for(int j=s4;j<=e4;j++){
cnt4=cnt4*10+int(a[j]-'0');
}
for(int j=s5;j<=e5;j++){
cnt5=cnt5*10+int(a[j]-'0');
}
if(cnt1>255||cnt2>255||cnt3>255||cnt4>255|cnt5>65535){
cout<<"ERR"<<endl;
continue;
}
int flag=0;
for(int j=1;j<=i;j++){
if(k1[j]==cnt1&&k2[j]==cnt2&&k3[j]==cnt3&&k4[j]==cnt4&&k5[j]==cnt5){
flag=1;
cout<<"FAIL"<<endl;
break;
}
}
if(flag==1) continue;
cout<<"OK"<<endl;
k1[i]=cnt1,k2[i]=cnt2,k3[i]=cnt3,k4[i]=cnt4,k5[i]=cnt5;
}
else{
if((a[s1]=='0'&&(e1-s1+1)>1)||(a[s2]=='0'&&(e2-s2+1)>1)||(a[s3]=='0'&&(e3-s3+1)>1)||(a[s4]=='0'&&(e4-s4+1)>1)||(a[s5]=='0'&&(e5-s5+1)>1)){
cout<<"ERR"<<endl;
continue;
}
if(a[e1+1]!='.'||a[e2+1]!='.'||a[e3+1]!='.'||a[e4+1]!=':'){
cout<<"ERR"<<endl;
continue;
}
if(a[s1]=='-'||a[s2]=='-'||a[s3]=='-'||a[s4]=='-'||a[s5]=='-'){
cout<<"ERR"<<endl;
continue;
}
for(int j=s1;j<=e1;j++){
cnt1=cnt1*10+int(a[j]-'0');
}
for(int j=s2;j<=e2;j++){
cnt2=cnt2*10+int(a[j]-'0');
}
for(int j=s3;j<=e3;j++){
cnt3=cnt3*10+int(a[j]-'0');
}
for(int j=s4;j<=e4;j++){
cnt4=cnt4*10+int(a[j]-'0');
}
for(int j=s5;j<=e5;j++){
cnt5=cnt5*10+int(a[j]-'0');
}
if(cnt1>255||cnt2>255||cnt3>255||cnt4>255|cnt5>65535){
cout<<"ERR"<<endl;
continue;
}
int flag=0;
for(int j=1;j<=i;j++){
if(k1[j]==cnt1&&k2[j]==cnt2&&k3[j]==cnt3&&k4[j]==cnt4&&k5[j]==cnt5){
flag=1;
cout<<j<<endl;
break;
}
}
if(flag==0) cout<<"FAIL"<<endl;
}
}
return 0;
}