#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int comp(const void*a,const void*b)
{
return *(int*)a-*(int*)b;
}
int main()
{
int n,m,i,j,k;
int a[100],b[100];
bool mark[100];
while(scanf("%d%d",&n,&m)!=EOF&&(n||m))
{
for(i=0; i<n; i++)
scanf("%d",&a[i]);
for(j=0; j<m; j++)
scanf("%d",&b[j]);
memset(mark,true,sizeof(mark));
qsort(a,n,sizeof(int),comp);
qsort(b,m,sizeof(int),comp);
i = j = k = 0;
while(i<n&&j<m)
{
if(a[i]==b[j])
{
k++;
mark[i++] = false;
j++;
}else if(a[i]>b[j]){
j++;
}else i++;
}
if(k==n)
printf("NULL\n");
else{ for(i = 0;i<n;i++)
if(mark[i])
printf("%d ",a[i]);
printf("\n");
}
}
return 0;
}
#include<stdlib.h>
#include<string.h>
int comp(const void*a,const void*b)
{
return *(int*)a-*(int*)b;
}
int main()
{
int n,m,i,j,k;
int a[100],b[100];
bool mark[100];
while(scanf("%d%d",&n,&m)!=EOF&&(n||m))
{
for(i=0; i<n; i++)
scanf("%d",&a[i]);
for(j=0; j<m; j++)
scanf("%d",&b[j]);
memset(mark,true,sizeof(mark));
qsort(a,n,sizeof(int),comp);
qsort(b,m,sizeof(int),comp);
i = j = k = 0;
while(i<n&&j<m)
{
if(a[i]==b[j])
{
k++;
mark[i++] = false;
j++;
}else if(a[i]>b[j]){
j++;
}else i++;
}
if(k==n)
printf("NULL\n");
else{ for(i = 0;i<n;i++)
if(mark[i])
printf("%d ",a[i]);
printf("\n");
}
}
return 0;
}