using System;

namespace Takmicenje_1___2
{
    class Program
    {
        static void Main(string[] args)
        {
            int N = Convert.ToInt32(Console.ReadLine());
            string[] unos = Console.ReadLine().Split();
            int[] zalihe = new int[4];
            zalihe[0] = Convert.ToInt32(unos[0]);
            zalihe[1] = Convert.ToInt32(unos[1]);
            zalihe[2] = Convert.ToInt32(unos[2]);
            zalihe[3] = Convert.ToInt32(unos[3]);
            string[] ulaz;
            string[] krvneGrupe = new string[N];
            int[] jedinice = new int[N];
            int[,] mat = new int[N, 4];
            bool moguce = true;
            for (int i = 0; i < N; i++)
            {
                ulaz = Console.ReadLine().Split();
                krvneGrupe[i] = ulaz[0];
                jedinice[i] = Convert.ToInt32(ulaz[1]);
            }
            for(int i = 0; i < N; i++)
            {
                if (krvneGrupe[i] == "O")
                {
                    if (zalihe[0] >= jedinice[i])
                    {
                        zalihe[0] -= jedinice[i];
                        mat[i, 0] = jedinice[i];
                    }
                    else
                    {
                        moguce = false;
                        break;
                    }
                }
            }
            for (int i = 0; i < N; i++)
            {
                if (krvneGrupe[i] == "A" && moguce)
                {
                    if (zalihe[1] >= jedinice[i])
                    {
                        zalihe[1] -= jedinice[i];
                        mat[i, 1] = jedinice[i];
                    }
                    else
                    {
                        if (zalihe[0] >= jedinice[i] - zalihe[1])
                        {
                            zalihe[0] -= jedinice[i] - zalihe[1];
                            mat[i, 0] = jedinice[i] - zalihe[1];
                        }
                        else
                        {
                            moguce = false;
                            break;
                        }
                        mat[i, 1] = zalihe[1];
                        zalihe[1] = 0; 
                    }
                }
                else if(krvneGrupe[i] == "B" && moguce)
                {
                    if (zalihe[2] >= jedinice[i])
                    {
                        zalihe[2] -= jedinice[i];
                        mat[i, 2] = jedinice[i];
                    }
                    else
                    {
                        if (zalihe[0] >= jedinice[i] - zalihe[2])
                        {
                            zalihe[0] -= jedinice[i] - zalihe[2];
                            mat[i, 0] = jedinice[i] - zalihe[2];
                        }
                        else
                        {
                            moguce = false;
                            break;
                        }
                        mat[i, 2] = zalihe[2];
                        zalihe[2] = 0;
                    }
                }
            }
            for(int i = 0; i < N; i++)
            {
                if(krvneGrupe[i] == "AB")
                {
                    for(int j = 0; j < 4; j++)
                    {
                        if(jedinice[i] > 0)
                        {
                            if (zalihe[j] < jedinice[i])
                            {
                                mat[i, j] = zalihe[j];
                                jedinice[i] -= zalihe[j];
                            }
                            else
                            {
                                mat[i, j] = jedinice[i];
                                jedinice[i] = 0;
                            }
                        } 
                    }
                    if(jedinice[i] > 0)
                    {
                        moguce = false;
                        break;
                    }
                }
            }
            if(moguce)
            {
                Console.WriteLine("moguce");
                for(int i = 0; i < N; i++)
                {
                    for(int j = 0; j < 4; j++)
                    {
                        Console.Write(mat[i, j] + " ");
                    }
                    Console.WriteLine();
                }
            }
            else
            {
                Console.WriteLine("nemoguce");
            }
        }
    }
}