#include<iostream>
#include<string>




using namespace std;

int main(){
	
	
	int n,o,a,b,ab,fleg=0,zbirAB=0;
	
	string Grupa[10000];
	
	
	int  Potrebno[10000],O[10000],A[10000],B[10000],AB[10000];
	
	
	cin>>n;
	cin>>o>>a>>b>>ab;
	for(int i=0;i<n;i++){
		
		cin>>Grupa[i];
		
		cin>>Potrebno[i];
		
		
		if(Grupa[i]=="O"){
			
			if(o>Potrebno[i]){
				
				o=o-Potrebno[i];
				O[i]=Potrebno[i];
				A[i]=0;
				B[i]=0;
				AB[i]=0;
				
				
				
			}else{
				
				fleg=1;
				
			}
			
			
		}
		
		if(Grupa[i]=="A"){
			
			if(a>0 || o>0){
				
				if(a>=Potrebno[i]){
					
					a=a-Potrebno[i];
					
					O[i]=0;
					A[i]=Potrebno[i];
					B[i]=0;
					AB[i]=0;
					
				}else{
					
					Potrebno[i]=Potrebno[i]-a;
					A[i]=a;
					a=0;
					B[i]=0;
					AB[i]=0;
					if(o>Potrebno[i]){
						
						o=o-Potrebno[i];
						
						O[i]=Potrebno[i];
						
					}else{
						fleg=1;
					}
					
					
				}
				
				
			}else{
				fleg=1;
				
				
				
			}
			
		}
		
		if(Grupa[i]=="B"){
			
			if(b>0 || o>0){
				
				if(b>=Potrebno[i]){
					
					b=b-Potrebno[i];
					
					O[i]=0;
					A[i]=0;
					B[i]=Potrebno[i];
					AB[i]=0;
					
				}else{
					
					Potrebno[i]=Potrebno[i]-b;
					B[i]=b;
					a=0;
					A[i]=0;
					AB[i]=0;
					if(o>Potrebno[i]){
						
						o=o-Potrebno[i];
						
						O[i]=Potrebno[i];
						
					}else{
						fleg=1;
					}
					
					
				}
				
				
			}else{
				fleg=1;
				
				
				
			}
			
			
			
			
		}
		
		if(Grupa[i]=="C"){
			
			zbirAB=zbirAB+Potrebno[i];
			
		}
	}
		
	
	if(fleg==1){
		
		cout<<"nemoguce";
		return 0;
		
	}
	
	
	if(zbirAB>(o+a+b+ab)){
		
		cout<<"nemoguce";
		return 0;
	}
	
	for(int i=0;i<n;i++){
		
		if(Grupa[i]=="AB"){
			
			
				
				if(a>=Potrebno[i]){
					cout<<endl<<a<<Potrebno[i];
					a=a-Potrebno[i];
					A[i]=Potrebno[i];
					B[i]=0;
					AB[i]=0;
					O[i]=0;
					
				}else{
					
					Potrebno[i]=Potrebno[i]-a;
					
					A[i]=a;
					a=0;
					
					if(b>=Potrebno[i]){
						
						b=b-Potrebno[i];
						B[i]=Potrebno[i];
						AB[i]=0;
						O[i]=0;
					}else{
						
						Potrebno[i]=Potrebno[i]-b;
						B[i]=b;
						b=0;
						
						if(ab>=Potrebno[i]){
							
							ab=ab-Potrebno[i];
							AB[i]=Potrebno[i];
							O[i]=0;
							
							
						}else{
							
							Potrebno[i]=Potrebno[i]-ab;
							AB[i]=ab;
							ab=0;
							O[i]=Potrebno[i];
							
								
								
							}
						}
						
					}
					
					
				
			
				
			}
			
		}
		
		cout<<"moguce"<<endl;;
		for(int i=0;i<n;i++){
			
			cout<<O[i]<<" "<<A[i]<<" "<<B[i]<<" "<<AB[i]<<endl;
			
		}
		
		
		
		
	
	
	
	
	
	
	return 0;
}