#include<bits/stdc++.h>
using namespace std;
struct node{
int a,b,c,d,e;
bool fenghao=false;
int lei;
}ip[2000];
int n;
int check(char c1,char c2,char c3,char c4)
{
if(c1!='.'||c2!='.'||c3!='.'||c4!=':')
return 1;
return 0;
}
int Check(int a1,int a2,int a3,int a4,int a5)
{
if(a1>=0&&a1<=255&&a2>=0&&a2<=255&&a3>=0&&a3<=255&&a4>=0&&a4<=255&&a5>=0&&a5<=65535)
return 0;
return 1;
}
int dfs(int step,int a1,int a2,int a3,int a4,int a5)
{
int flag=0;
for(int i=1;i<step;i++)
{
if(ip[i].fenghao==true)
continue;
if(ip[i].lei==2)
continue;
if(ip[i].a==a1&&ip[i].b==a2&&ip[i].c==a3&&ip[i].d==a4&&ip[i].e==a5)
{
flag=1;
break;
}
}
if(flag==1)
return 0;
if(flag==0)
return 1;
}
int bfs(int step,int a1,int a2,int a3,int a4,int a5)
{
int flag=0;
for(int i=1;i<step;i++)
{
if(ip[i].fenghao==true)
continue;
if(ip[i].lei==2)
continue;
if(ip[i].a==a1&&ip[i].b==a2&&ip[i].c==a3&&ip[i].d==a4&&ip[i].e==a5)
{
flag=1;
break;
}
}
if(flag==1)
return 0;
return 1;
}
int f(int step,int a1,int a2,int a3,int a4,int a5)
{
for(int i=1;i<step;i++)
{
if(ip[i].fenghao==true)
continue;
if(ip[i].lei==2)
continue;
if(ip[i].a==a1&&ip[i].b==a2&&ip[i].c==a3&&ip[i].d==a4&&ip[i].e==a5)
{
return i;
}
}
}
int main()
{
cin>>n;
string leixing;
for(int i=1;i<=n;i++)
{
char ch1,ch2,ch3,ch4;
cin>>leixing;
if(leixing=="Server")
ip[i].lei=1;
if(leixing=="Client")
ip[i].lei=2;
cin>>ip[i].a;
cin>>ch1;
cin>>ip[i].b;
cin>>ch2;
cin>>ip[i].c;
cin>>ch3;
cin>>ip[i].d;
cin>>ch4;
cin>>ip[i].e;
if(check(ch1,ch2,ch3,ch4)||Check(ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e))
{
cout<<"ERR"<<endl;
ip[i].fenghao=true;
continue;
}
if(ip[i].lei==1)
{
if(dfs(i,ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e)==1)
{
cout<<"OK"<<endl;
continue;
}
if(dfs(i,ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e)==0)
{
cout<<"FAIL"<<endl;
ip[i].fenghao=true;
continue;
}
}
if(ip[i].lei==2)
{
if(bfs(i,ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e)==1)
{
cout<<"FAIL"<<endl;
ip[i].fenghao=true;
continue;
}
if(bfs(i,ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e)==0)
{
cout<<f(i,ip[i].a,ip[i].b,ip[i].c,ip[i].d,ip[i].e)<<endl;
continue;
}
}
}
}
急急急!!!