using System;

namespace ConsoleApp13
{
    class Program
    {
        struct Pacijent
        {
            public string grupa;
            public int kolicina;
        
        }
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            string[] s = Console.ReadLine().Split();
            int[,] t = new int[n,4];
            int O = int.Parse(s[0]);
            int A = int.Parse(s[1]);
            int B = int.Parse(s[2]);
            int AB = int.Parse(s[3]);
            Pacijent[] p = new Pacijent[n];
            bool m = true;
            for (int i = 0; i < n; i++)
            {
                string[] a = Console.ReadLine().Split();
                p[i].grupa = a[0];
                p[i].kolicina = int.Parse(a[1]);
            }
            for (int i = 0; i < n; i++)
            {
                if (p[i].grupa=="O")
                {
                    if (p[i].kolicina>O && p[i].kolicina>0)
                    {
                        m = false;
                    }
                    else
                    {
                        t[i, 0] = O - p[i].kolicina;
                        O -= p[i].kolicina;
                    }
                }
                else if (p[i].grupa == "A")
                {
                    if (p[i].kolicina>A+O && p[i].kolicina > 0)
                    {
                        m = false;
                    }
                    else if (p[i].kolicina>A && p[i].kolicina > 0)
                    {
                        t[i, 1] = p[i].kolicina - A;
                        p[i].kolicina -= A;
                        A = 0;
                        t[i, 0] = O - p[i].kolicina;
                        O -= p[i].kolicina;
                        p[i].kolicina = 0;
                    }
                    else
                    {
                        t[i,1] =A - p[i].kolicina;
                        A -= p[i].kolicina;
                        p[i].kolicina = 0;
                    }
                }
                else if (p[i].grupa=="B")
                {
                    if (p[i].kolicina >B + O && p[i].kolicina > 0)
                    {
                        m = false;
                    }
                    else if (p[i].kolicina > B && p[i].kolicina > 0)
                    {
                        t[i, 2] = p[i].kolicina -B;
                        p[i].kolicina -= B;
                        B = 0;
                        t[i, 0] = O - p[i].kolicina;
                        O -= p[i].kolicina;
                        p[i].kolicina = 0;
                    }
                    else
                    {
                        t[i, 2] = B - p[i].kolicina;
                        B -= p[i].kolicina;
                        p[i].kolicina = 0;
                    }
                }
                else
                {
                    if (p[i].kolicina>O+A+B+AB && p[i].kolicina > 0)
                    {
                        m = false;
                    }
                    else
                    {
                        if (p[i].kolicina>AB && p[i].kolicina > 0)
                        {
                            t[i, 3] = p[i].kolicina - AB;
                            p[i].kolicina -= AB;
                            AB = 0;
                            if (p[i].kolicina>B && p[i].kolicina > 0)
                            {
                                t[i, 2] = p[i].kolicina -B;
                                p[i].kolicina -= B;
                                B = 0;
                                if (p[i].kolicina > A && p[i].kolicina > 0)
                                {
                                    t[i, 1] = p[i].kolicina - A;
                                    p[i].kolicina -= A;
                                    A = 0;
                                    if (p[i].kolicina>O && p[i].kolicina > 0)
                                    {
                                        m = false;
                                    }
                                    else
                                    {
                                        t[i, 0] = O - p[i].kolicina;
                                        O -= p[i].kolicina;
                                        p[i].kolicina = 0;
                                    }
                                }
                                else
                                {
                                    t[i, 1] = A - p[i].kolicina;
                                    A -= p[i].kolicina;
                                    p[i].kolicina = 0;
                                }
                            }
                            else
                            {
                                t[i, 2] = B - p[i].kolicina;
                                B -= p[i].kolicina;
                                p[i].kolicina = 0;
                            }
                        }
                        else
                        {
                            t[i, 3] = AB - p[i].kolicina;
                            AB -= p[i].kolicina;
                            p[i].kolicina = 0;
                        }
                    }
                }

            }
            if (m)
            {
                Console.WriteLine("moguce");
                for (int i = 0; i < n; i++)
                {
                    string tekst = "";
                    for (int j = 0; j < 4; j++)
                    {
                        tekst += " " + t[i, j];
                    }
                    Console.WriteLine(tekst);
                }
            }
            else
            {
                Console.WriteLine("nemoguce");
            }
            
        }
    }
}