#include <bits/stdc++.h>
using namespace std;
#define int long long
int n,a[15],bh;
map <string,pair<bool,int> > mp;
signed main(){
cin>>n;
while (n--){
bh++;
string nm,id;
cin>>nm>>id;
memset(a,0,sizeof(a));
bool f=0,bb=0;
int cnt=1,cnt1=0,cnt2=0;
for (int i=0;i<id.size();i++){
if (id[i]-'0'==0&&f==0){
bb=1;
break;
}
if(id[i]-'0'>0&&id[i]-'0'<=9||id[i]-'0'==0&&f){
f=1;
a[cnt]=a[cnt]*10+(id[i]-'0');
}
else if (id[i]=='.'||id[i]==':'){
if (id[i]=='.')cnt1++;
else cnt2++;
cnt++;
f=0;
}
}
if (a[1]>255||!a[1]||a[2]>255||!a[2]||a[3]>255||!a[3]||
a[4]>255||!a[4]||a[5]>65535||!a[5]||bb||cnt1!=3||cnt2!=1){
cout<<"ERR\n";
continue;
}
if (nm=="Server"){
if (mp[id].first){
cout<<"FAIL\n";
continue;
}
else{
cout<<"OK\n";
mp[id].first=1;
mp[id].second=bh;
continue;
}
}
else{
if (mp[id].first){
cout<<mp[id].second<<'\n';
continue;
}
else{
cout<<"FAIL\n";
continue;
}
}
}
return 0;
}