#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define nmax 64
#define lmax 512
int n,t,u,i,j,a[lmax],nu,tt,uu;
char semn;
char c[nmax][lmax],d[nmax][lmax];
int fc(const void *x,const void *y)
{
return strcmp((char*)x,(char*)y);
}
int main()
{
freopen("amlei.in","r",stdin);
freopen("amlei.out","w",stdout);
while (scanf("%d%d%d",&n,&t,&u)==3)
{
memset(c,0,sizeof(c));
memset(d,0,sizeof(d));
for (i=0;i<t;i++)
{
for (j=0;j<n;j++)
scanf("%d",a+j);
memset(c[i],'1',n);
for (j=0;j<n;j++)
{
semn=(a[j]>0?'2':'0');
a[j]=(a[j]>0?a[j]:-a[j]);
--a[j];
c[i][a[j]]=semn;
}
}
for (i=0;i<u;i++)
{
for (j=0;j<n;j++)
scanf("%d",a+j);
memset(d[i],'1',n);
for (j=0;j<n;j++)
{
semn=(a[j]>0?'2':'0');
a[j]=(a[j]>0?a[j]:-a[j]);
--a[j];
d[i][a[j]]=semn;
}
}
qsort((void*)c,t,lmax,fc);
qsort((void*)d,u,lmax,fc);
tt=t,uu=u;
for (i=0;i<t-1;i++)
if (strcmp(c[i],c[i+1])==0)
c[i][0]=255,--tt;
for (i=0;i<u-1;i++)
if (strcmp(d[i],d[i+1])==0)
d[i][0]=255,--uu;
qsort((void*)c,t,lmax,fc);
qsort((void*)d,u,lmax,fc);
nu=0;
for (i=0;(i<tt)||(i<uu);i++)
if (strcmp(c[i],d[i])!=0)
{
nu=1;
break;
}
if (nu)
printf("NU\n");
else
printf("DA\n");
}
return 0;
}