#include #include #include #include #include #include #include #include using namespace std; #define SIZE(s) int((s).size()) #define REP(i,n) for (int i=0; i<(n); i++) char buf[1000], b2[1000], b3[1000]; int main() { while (1) { int N; scanf("%d %s ",&N,buf); if (!N) break; printf("%s\n",buf); vector all; vector buyer; vector sum; REP(i,N) { int x,y; scanf("%s %s %d.%d ",buf,b2,&x,&y); string cmd(b2), who(buf); all.push_back(who); sum.push_back(1000*x+y); if (cmd=="buy") { buyer.push_back(true); } else { buyer.push_back(false); } } REP(j,SIZE(all)) { cout << all[j] << ":"; bool mam=false; if (buyer[j]) { REP(k,SIZE(all)) if (!buyer[k]) { if (sum[k] <= sum[j]) { cout << " " << all[k]; mam=true; } } } else { REP(k,SIZE(all)) if (buyer[k]) { if (sum[j] <= sum[k]) { cout << " " << all[k]; mam=true; } } } if (!mam) cout << " NO-ONE"; cout << endl; } } }