rt
#include<bits/stdc++.h>
using namespace std;
struct sur {
string nm;
int sld;
};
struct h {
string nm;
int sld;
};
bool cmp1(sur a,sur b) {
return a.sld>b.sld;
}
bool cmp2(h a,h b) {
return a.sld>b.sld;
}
vector<sur> v;
vector<h> hh;
int n,m;
int main(){
cin>>n>>m;
for (int p=1;p<=n+m;p++) {
string s;
char z;
int d;
cin>>s>>z>>d;
if (z=='S') {
v.push_back(sur(s,d));
}else {
hh.push_back(h(s,d));
}
}
sort(v.begin(),v.end(),cmp1);
sort(hh.begin(),hh.end(),cmp2);
const int minn=min(2,int(hh.size() - 1));
cout<<hh[minn].nm<<endl;
int z=min(8,int(v.size()-1));
for (int i = z-3; i <= z; ++i) {
cout << v[i].nm << endl;
}
return 0;
}