#include <bits/stdc++.h>
#define REP(i,n,N) for(int i=n;i<(int)N;i++)
#define ck(n,a,b) ((a)<=(n)&&(n)<(b))
#define p(s) cout<<(s)<<endl
#define F first
#define S second
typedef long long ll;
using namespace std;

int main() {
	int M, T, P, R;
	while(cin>>M>>T>>P>>R, M||T||P||R){
		int pena[51][11];
		REP(i,0,51) REP(j,0,11) pena[i][j]=0;
//int ok[51][11]={};
//int alltime[51]={};
		pair<int,pair<int,int>> allt[51];
		REP(i,0,51) allt[i]={0,{0,-i-1}};
		//pair<int,int> prob[51];
		//REP(i,0,T) prob[i]={0,-i-1};//p,team
		REP(i, 0, R){
			int m, t, p, j;
			cin>>m>>t>>p>>j;
			t--;
			p--;
			if(j!=0){
				pena[t][p]++;
			}
			else if(j==0){
				allt[t].S.F+=(pena[t][p]*20 + m);
				allt[t].F--;
			}
		}
/*		REP(i, 0, T){
			REP(j, 0, P){
				allt[i].F+=ok[i][j];
			}
		}
*/
		sort(allt, allt+T);
		cout<<-allt[0].S.S;
		REP(i, 1, T){
			if(allt[i-1].F==allt[i].F && allt[i-1].S.F==allt[i].S.F){
				cout<<"="<<-allt[i].S.S;
			}
			else{
				cout<<","<<-allt[i].S.S;
			}
		}
		cout<<endl;
	}
	return 0;
}