#include <bits/stdc++.h>
using namespace std;
int n;
map<string,string> par;
map<string,string> nums;
struct DSU{
void init(const string& x) {
if (par.find(x) == par.end()) {
par[x] = x;
}
}
string find(string x){
if(x != par[x]) par[x] = find(par[x]);
return par[x];
}
bool unite(string x,string y){
auto px = par[x],py = par[y];
if(px == py) return 1;
bool px_is_num = isdigit(px[0]);
bool py_is_num = isdigit(py[0]);
if (px_is_num && py_is_num) {
return false;
}
if(px_is_num){
par[y] = px;
}
else{
par[x] = py;
}
return 1;
}
};
int main(){
ios::sync_with_stdio(0);cin.tie(0);
cin >> n;
vector<string> vs1(n);
vector<string> vs2(n);
DSU dsu;
for(int i = 0 ; i < n ; i++) {cin >> vs1[i];dsu.init(vs1[i]);}
for(int i = 0 ; i < n ; i++) {cin >> vs2[i];dsu.init(vs2[i]);}
bool ok = 1;
for(int i = 0 ; i < n ; i++){
if(!dsu.unite(vs1[i],vs2[i])){
ok = 0;
break;
}
}
if(ok) cout << "DA";
else cout << "NE";
}