#include<bits/stdc++.h>
using namespace std;
map<string,int> server;
int n;
int string_to_int(string s){
int ans=0;
for(int i=0;i<s.size();i++)ans=ans*10+(s[i]-'0');
return ans;
}
bool valid(string s){
vector<int> v;
string cur="";
int dot=0,comma=0;
for(int i=0;i<s.size();i++){
if(s[i]=='.'){
if(cur.size()>1&&cur[0]=='0')return 0;
dot++;
v.push_back(string_to_int(cur));
cur="";
continue;
}
if(s[i]==':'){
if(cur.size()>1&&cur[0]=='0')return 0;
comma++;
v.push_back(string_to_int(cur));
cur="";
continue;
}
cur+=s[i];
}
if(cur.size()>1&&cur[0]=='0')return 0;
if(cur!="")v.push_back(string_to_int(cur));
if(v.size()!=5||dot!=3||comma!=1)return 0;
for(int i=0;i<4;i++)
if(v[i]<0||v[i]>255)return 0;
if(v[4]<0||v[4]>65535)return 0;
return 1;
}
int main()
{
//freopen("network.in","r",stdin);
//freopen("network.out","w",stdout);
cin>>n;
int id=1;
for(int i=1;i<=n;i++){
string type,s;cin>>type>>s;
if(!valid(s)){
cout<<"ERR\n";
continue;
}
if(type=="Server"){
if(!server[s]){
cout<<"OK\n";
server[s]=id;id++;
continue;
}
else cout<<"FAIL\n";
}
if(type=="Client"){
if(!server[s])cout<<"FAIL\n";
else cout<<server[s]<<"\n";
}
}
return 0;
}