using System;

class Program
{
    static bool dali(int o1, int a1, int b1, int ab1, int o, int a, int b, int ab)
    {
        if (o1 > o)
        {
            return false;
        }
        else
        {
            if (o1 > 0)
            {
                o = o - o1;
                o1 = 0;
            }
            if (a1 > a + o)
            {
                return false;
            }
            else
            {
                if (o + a == a1)
                {
                    o1 = 0;
                    a1 = 0;
                    o = 0;
                    a = 0;
                }
                else if (o + a > a1 && a1 > 0)
                {
                    if (a >= a1)
                    {
                        a = a - a1;
                        a1 = 0;
                    }
                    else
                    {
                        o = o - (o - a);
                        a = 0;
                        a1 = 0;
                    }
                }
            }
        }
        return true;
    }

    static void Main(string[] args)
    {
        int n = int.Parse(Console.ReadLine());
        var jeajea = Console.ReadLine().Split();
        int o = int.Parse(jeajea[0]);
        int a = int.Parse(jeajea[1]);
        int b = int.Parse(jeajea[2]);
        int ab = int.Parse(jeajea[3]);
        int o1 =0, a1=0, b1=0, ab1=0;
        string c;
        int x;
        string[] reci;
        for (int i = 0;i<n;i++)
        {
            reci = Console.ReadLine().Split();
            c = reci[0];
            x = int.Parse(reci[1]);
            if (c == "O")
            {
                o1+=x;
            }
            else if (c == "A")
            {
                a1+=x;
            }
            else if (c == "B")
            {
                b1+=x;
            }
            else if (c == "AB")
            {
                ab1+=x;
            }
        }
        if (dali(o1,a1,b1,ab1,o,a,b,ab))
        {
            Console.WriteLine("moguce");
        }
        if (o1>o)
        {
            Console.WriteLine("nemoguce");
        }
        else
        {
            if(o1>0)
            {
                Console.WriteLine("{0} {1} {2} {3}", o1, 0, 0, 0);
                o = o - o1;
                o1 = 0;
            }
            if (a1 > a + o)
            {
                Console.WriteLine("nemoguce");
            }
            else
            {
                if(o+a==a1)
                {
                    Console.WriteLine("{0} {1} {2} {3}", o1, a1, 0, 0);
                    o1 = 0;
                    a1 = 0;
                    o = 0;
                    a = 0;
                }
                else if(o+a>a1 && a1>0)
                {
                    if(a>=a1)
                    {
                        Console.WriteLine("{0} {1} {2} {3}", 0, a1, 0, 0);
                        a = a - a1;
                        a1 = 0;
                    }
                    else
                    {
                        Console.WriteLine("{0} {1} {2} {3}", o-a1, a, 0, 0);
                        o = o - (o - a);
                        a = 0;
                        a1 = 0;
                    }
                }
            }
        }
       
    }
}