using System;
 
namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = Convert.ToInt32(Console.ReadLine());
            String bolnica = Convert.ToString(Console.ReadLine());
            int O = Convert.ToInt32(Convert.ToString(bolnica[0]));
            int A = Convert.ToInt32(Convert.ToString(bolnica[2]));
            int B = Convert.ToInt32(Convert.ToString(bolnica[4]));
            int AB = Convert.ToInt32(Convert.ToString(bolnica[6]));
            String[] pacijenti = new String[n];
            String potroseno = "";
            String[] potrosene = new String[n];
            String[] rezultati = new String[n];
            for (int i = 0; i < n; i++)
            {
                pacijenti[i] = Convert.ToString(Console.ReadLine());
            }
 
            for(int i = 0; i < n; i++)
            {
                int p = pacijenti[i].IndexOf(" ");
                String grupa = pacijenti[i].Substring(0, p);
                int jedinice = Convert.ToInt32(pacijenti[i].Substring(p + 1));
 
                if (grupa == "O")
                {
                    if (jedinice > O)
                    {
                        Console.WriteLine("nemoguce");
                        return;
                    }
                    potroseno = Convert.ToString(O-jedinice) + " 0 0 0";
                    O -= jedinice;
                }
                else if(grupa == "A")
                {
                    if (jedinice > A + O)
                    {
                        Console.WriteLine("nemoguce");
                        return;
                    }
                    else if(jedinice > A && A != 0)
                    {
                        int A1 = 0;
                        jedinice -= A;
                        A = A1;
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 0";
                        O -= jedinice;
                    }
                    else if(A == 0)
                    {
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 0";
                        O -= jedinice;
                    }
                    else
                    {
                        if (jedinice == A)
                        {
                            potroseno = "0 " + Convert.ToString(jedinice) + " 0 0";
                            AB = 0;
                        }
                        else
                        {
                            potroseno = "0 0 " + Convert.ToString(B - jedinice) + " 0";
                            B -= jedinice;
                        }
                    }
                }
                else if(grupa == "B")
                {
                    if (jedinice > B + O)
                    {
                        Console.WriteLine("nemoguce");
                        return;
                    }
                    else if (jedinice > B && B != 0)
                    {
                        int B1 = 0;
                        jedinice -= B;
                        B = B1;
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 0";
                        O -= jedinice;
                    }
                    else if (B == 0)
                    {
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 0";
                        O -= jedinice;
                    }
                    else
                    {
                        if (jedinice == B)
                        {
                            potroseno = "0 " + Convert.ToString(jedinice) + " 0 0";
                            AB = 0;
                        }
                        else
                        {
                            potroseno = "0 0 " + Convert.ToString(B - jedinice) + " 0";
                            B -= jedinice;
                        }
                    }
                }
                else
                {
                    if (jedinice > AB + A + B + O)
                    {
                        Console.WriteLine("nemoguce");
                        return;
                    }
                    else if (jedinice > AB && AB != 0)
                    {
                        int AB1 = 0;
                        jedinice -= AB;
                        AB = AB1;
                        if (jedinice > A + B + O)
                        {
                            Console.WriteLine("nemoguce");
                            return;
                        }
                        else if (jedinice > B && B != 0)
                        {
                            int B1 = 0;
                            jedinice -= B;
                            B = B1;
                            if (jedinice > A + O)
                            {
                                Console.WriteLine("nemoguce");
                                return;
                            }
                            else if (jedinice > A && A != 0)
                            {
                                int A1 = 0;
                                jedinice -= A;
                                A = A1;
                                potroseno = Convert.ToString(O - jedinice) + " "+A1.ToString()+" "+B1.ToString()+" "+ AB1.ToString();
                                O -= jedinice;
                            }
                            else if (A == 0)
                            {
                                potroseno = Convert.ToString(O - jedinice) + " 0 " + B1.ToString() + " " + AB1.ToString();
                                O -= jedinice;
                            }
                            else
                            {
                                if (jedinice == A)
                                {
                                    potroseno = "0 " + Convert.ToString(jedinice) + " " + B1.ToString() + " " + AB1.ToString();
                                    A = 0;
                                }
                                else
                                {
                                    potroseno = "0 " + Convert.ToString(A - jedinice) + " " + B1.ToString() + " " + AB1.ToString();
                                    A -= jedinice;
                                }
                            }
                        }
                        else if (B == 0)
                        {
                            potroseno = Convert.ToString(O - jedinice) + " 0 0 " + AB1.ToString();
                            O -= jedinice;
                        }
                        else
                        {
                            if(jedinice == B)
                            {
                                potroseno = "0 0 " + Convert.ToString(jedinice) + " " + AB1.ToString();
                                B = 0;
                            }
                            else
                            {
                                potroseno = "0 0 " + Convert.ToString(B - jedinice) + " " + AB1.ToString();
                                B -= jedinice;
                            }
                        }
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 " + AB1.ToString();
                        O -= jedinice;
                    }
                    else if (AB == 0)
                    {
                        potroseno = Convert.ToString(O - jedinice) + " 0 0 0";
                        O -= jedinice;
                    }
                    else
                    {
                        if (jedinice == AB)
                        {
                            potroseno = "0 0 0 " + Convert.ToString(jedinice);
                            AB = 0;
                        }
                        else
                        {
                            potroseno = "0 0 0 " + Convert.ToString(AB - jedinice);
                            AB -= jedinice;
                        }
                    }
                }
                rezultati[i] = "moguce";
                potrosene[i] = potroseno;
            }
            for(int i = 0; i < n; i++)
            {
                Console.WriteLine(rezultati[i]);
                Console.WriteLine(potrosene[i]);
            }
        }
    }
}