#include <stdio.h>
#include <ctype.h>
#include <string.h>

int main() {
	
	int n, kO, kA, kB, kAB, i, j, kKp, nem, gO = 0, gA = 0, gB = 0, gAB = 0, bO[10], bA[10], bB[10], bAB[10];
	char KgP[2];
	
	nem = 0;
	
	scanf("%d", &n);
	scanf("%d %d %d %d", &kO, &kA, &kB, &kAB);
	
	for (i = 0; i < n; i++) {
		scanf("%s %d", &KgP, &kKp);
		if (KgP[2] == 'O') {
			for (j = 0; j < kKp; j++) {
				if (kO != 0) {
					gO = gO + 1;
					kO = kO - 1;
			    }
			    else {
					nem = nem + 1;
			    }
			}
		}
		if (KgP[2] == 'A') {
			for (j = 0; j < kKp; j++) {
				if (kA != 0) {
					gA = gA + 1;
					kA = kA - 1;
			    }
			    else {
				    if (kO != 0) {
				    	gO = gO + 1;
				    	kO = kO - 1;
			        }
			        else {
				        nem = nem + 1;
			        }
			    }
			}
		}
		if (KgP[2] == 'B') {
			for (j = 0; j < kKp; j++) {
				if (kB != 0) {
					gB = gB + 1;
					kB = kB - 1;
			    }
			    else {
				    if (kO != 0) {
				    	gO = gO + 1;
				    	kO = kO - 1;
			        }
			        else {
				        nem = nem + 1;
			        }
			    }
			}
		}
		if (KgP[2] == 'AB') {
			for (j = 0; j < kKp; j++) {
				if (kAB != 0) {
					gAB = gAB + 1;
					kAB = kAB - 1;
			    }
			    else {
				    if (kA != 0) {
				    	gA = gA + 1;
				    	kA = kA - 1;
			        }
			        else {
				        if (kB != 0) {
				        	gB = gB + 1;
				        	kB = kB - 1;
			            }
			            else {
			            	if (kO != 0) {
			            		gO = gO + 1;
			            		kO = kO - 1;
							}
							else {
								nem = nem + 1;
							}
						}
			        }
			    }
			    bO[i] = gO;
			    bA[i] = gA;
			    bB[i] = gB;
			    bAB[i] = gAB;
			}
		}
		nem = nem + 1;
	}
	
	if (nem == 0) {
		printf("moguce\n");
		for (i = 0; i < n; i++) {
			printf("%d %d %d %d\n", bO[i], bA[i], bB[i], bAB[i]);
		}
	}
	if (nem != 0) {
		printf("nemoguce");
	}
	
return 0;
}