#include<bits/stdc++.h>
using namespace std;
#define int long long
set<int> s[10],a;
string t;
set<int> expr(int &p);
set<int> term(int &p);
set<int> factor(int &p);
set<int> unio(set<int> x,set<int> y){
  set<int> res;
  for(int i:x) res.insert(i);
  for(int i:y) res.insert(i);
  return res;
}
set<int> inte(set<int> x,set<int> y){
  set<int> res;
  for(int i:x)
    if(y.count(i)) res.insert(i);
  return res;
}
set<int> diff(set<int> x,set<int> y){
  set<int> res;
  for(int i:x)
    if(!y.count(i)) res.insert(i);
  return res;
}
set<int> symm(set<int> x,set<int> y){
  set<int> res;
  for(int i:x)
    if(!y.count(i)) res.insert(i);
  for(int i:y)
    if(!x.count(i)) res.insert(i);
  return res;
}
set<int> comp(set<int> x){
  set<int> res;
  for(int i:a)
    if(!x.count(i)) res.insert(i);
  return res;
}
set<int> expr(int &p){
  set<int> res=term(p);
  while(p<(int)t.size()){
    if(t[p]=='u'){
      p++;
      res=unio(res,term(p));
      continue;
    }
    if(t[p]=='i'){
      p++;
      res=inte(res,term(p));
      continue;
    }
    if(t[p]=='d'){
      p++;
      res=diff(res,term(p));
      continue;
    }
    if(t[p]=='s'){
      p++;
      res=symm(res,term(p));
      continue;
    }
    break;
  }
  return res;
}
set<int> term(int &p){
  set<int> res;
  if(t[p]=='c'){
    p++;
    res=comp(term(p));
  }else if(t[p]=='('){
    p++;
    res=expr(p);
    p++;
  }else{
    res=factor(p);
  }
  return res;
}
set<int> factor(int &p){
  set<int> res=s[t[p++]-'A'];
  return res;
}


signed main(){
  char c;
  while(cin>>c){
    for(int i=0;i<10;i++) s[i].clear();
    a.clear();
    int x[10];
    int k=0;
    do{
      cin>>x[k];
      for(int i=0,t;i<x[k];i++){
	cin>>t;
	s[c-'A'].insert(t);
	a.insert(t);
      }
    }while(cin>>c,c!='R');
    int p;
    cin>>p>>t;
    set<int> ans=expr(p);
    bool f=0;
    for(int i:ans){
      if(f) cout<<" ";
      f=1;
      cout<<i;
    }
    if(ans.empty()) cout<<"NULL";
    cout<<endl;
  }
  return 0;
}