#include <iostream>
#include <string>
using namespace std;

char map[101];
int n,m;

void sheet(string hit){
	int a=0;
	bool ch=false;
	if(hit[0]=='A'){
		while(1){
			if(map[a]=='#'){
				map[a]='A';
				break;
			}
			a++;
		}
	}
	if(hit[0]=='B'){
		for(a=n-1;a>0;a--){
			if(map[a]=='#' && map[a-1]!='A' && map[a+1]!='A'){
				map[a]='B';
				ch=true;
				break;
			}
		}
		if(!ch){
			while(1){
				if(map[a]=='#'){
					map[a]='B';
					break;
				}
				a++;
			}
		}
	}
	if(hit[0]=='C'){
		for(a=0;a<n;a++){
			if(map[a]=='#' &&((map[a-1]!='#' && a>0)||(map[a+1]!='#' && a<n-1))){
				map[a]='C';
				ch=true;
				break;
			}
		}
		if(!ch){
			if(n%2==0)map[n/2]='C';
			if(n%2==1)map[(n+1)/2-1]='C';
		}
	}
	if(hit[0]=='D'){
		int max=0,x=0,res=0;
		for(a=0;a<n;a++){
			if(a==n-1 && map[a]=='#'){
				if(res>max){
					x=a;
					max=res;
				}
			}else if(map[a]=='#'){
				res++;
			}else{
				if((res+1)/2>max){
					if(res%2==0)x=a-res/2-1;
					if(res%2==1)x=a-(res+1)/2;
					max=res;
				}
				ch=true;
				res=0;
			}
		}
		if(ch){
			map[x]='D';
		}else{
			map[0]='D';
		}
	}
}

int main(void){
	int a;
	while(1){
		for(a=0;a<=100;a++){
			map[a]='#';
		}
		cin >> n >> m;
		if(n==0 && m==0)break;
		for(a=0;a<m;a++){
			string hito;
			cin >> hito;
			sheet(hito);
		}
		for(a=0;a<n;a++)cout << map[a];
		cout << endl;
	}
	return 0;
}