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

int n, m;

void sitA( char *ch ){
	for(int i=1; i<=n; i++){
		if( ch[i] == '#' ){
			ch[i] = 'A';
			return;
		}
	}
}

void sitB( char *ch ){
	for(int i=n; i>0; i--){
		if( ch[i] == '#' && ch[i-1]!='A' && ch[i+1]!='A' ){
			ch[i] = 'B';
			return;
		}
	}
	for(int i=1; i<=n; i++){
		if( ch[i] == '#' ){
			ch[i] = 'B';
			return;
		}
	}
}

void sitC( char *ch ){
	for(int i=1; i<=n; i++){
		if( ch[i]!='#' ){
			if( ch[i+1] == '#' ){
				ch[i+1] = 'C';
				return;
			}
			else if( ch[i-1] == '#' ){
				ch[i-1] = 'C';
				return;
			}
		}
	}
	int k = (n%2 ? (n+1)/2 : n/2+1);
	ch[k] = 'C';
}

void sitD( char *ch ){
	int md=0, mi=1;
	for(int i=1; i<=n; i++){
		if( ch[i] == '#' ){
			int dl=1, dr=1;
			for(; ch[i-dl]=='#'||ch[i-dl]=='x'; dl++)
				if( ch[i-dl]=='x' ){ dl = 500; break; }
			for(; ch[i+dr]=='#'||ch[i+dr]=='x'; dr++)
				if( ch[i+dr]=='x' ){ dr = 500; break; }
			int d = min( dl, dr );
			if( d > md ){
				md = d;
				mi = i;
			}
		}
	}
	ch[mi] = 'D';
}

int main(){
	while( cin >> n >> m, n||m ){
		char chairs[102];
		for(int i=0; i<=n; i++) chairs[i] = '#';
		chairs[0] = chairs[n+1] = 'x';
		for(int i=0; i<m; i++){
			char c;
			cin >> c;
			switch(c){
			case 'A': sitA(chairs); break;
			case 'B': sitB(chairs); break;
			case 'C': sitC(chairs); break;
			case 'D': sitD(chairs); break;
			}
		}
		for(int i=1; i<=n; i++)	cout << chairs[i];
		cout << endl;
	}
	return 0;
}