#include<cstdio>
#include<cstring>
using namespace std;
struct AC{
int xmin,xmax;
int ymin,ymax;
}a[27];
int n,b[27][2],i,j,h,ans[27],cnt=0;
bool v[27];
bool check(int x,int y){
if(b[x][0]>=a[y].xmin&&b[x][0]<=a[y].xmax&&b[x][1]>=a[y].ymin&&b[x][1]<=a[y].ymax)
return 1;
else return 0;
}
int main(){
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i].xmin>>a[i].xmax>>a[i].ymin>>a[i].ymax;
memset(ans,0,sizeof(ans));
memset(v,0,sizeof(v));
for(i=1;i<=n;i++)
cin>>b[i][0]>>b[i][1];
int m=n;
while(m--){
for(i=1;i<=n;i++)
{if(v[i]==0)
{int t=0,flag;
for(j=1;j<=n;j++)
if(check(i,j)&&ans[j]==0)
{t++;
flag=j;
}
if(t==1){ans[flag]=i;v[i]=1;cnt++;}
}
}}
if(cnt==n)
for(i=1;i<=n;i++)
printf("%c%d\n",'A'+i-1,ans[i]);
else cout<<"None"<<endl;
return 0;
}