using System;






class Program
{


    static void Main()
    {
        int N = int.Parse(Console.ReadLine());
        string[] s = Console.ReadLine().Split();
        int O = int.Parse(s[0]);
        int A = int.Parse(s[1]);
        int B = int.Parse(s[2]);
        int AB = int.Parse(s[3]);
        int O1 = 0;
        int A1 = 0;
        int B1 = 0;
        int AB1 = 0;
        int[,] jedinica = new int[N, N];
        string[,] krv = new string[N, N];
        int j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            string[] s1 = Console.ReadLine().Split();
            jedinica[j, i] = int.Parse(s1[1]);
            krv[j, i] = s1[0];
        }
        bool yes = true; j = 0; bool yesa = true; bool yesb = true; bool yesab = true;
        for (int i = 0; i < N; i++, j++)
        {
            if ("O" == krv[j, i]);
            {
                O1 = O1 + jedinica[j, i];
                if (O1 > O)
                {
                    yes = false;

                }
                else yes = true;

            }
        }
        O = O - O1;
        int O2 = 0;
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            if ("O" == krv[j, i]) ;
            {
                O2 = O2 + jedinica[j, i];
            }
        }
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
         
            if ("A" == krv[j, i]) ;
            {
                A1 = A1 + jedinica[j, i];
                if (A1 > A + O2)
                {
                    yesa = false;

                }
                else yesa = true;

            }
        }
        A = A - A1;
        int O3 = 0;
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            if ("O" == krv[j, i]) ;
            {
                O3 = O3 + jedinica[j, i];
            }
        }
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            
            if ("B" == krv[j, i]) ;
            {
                B1 = B1 + jedinica[j, i];
                if (B1 > B + O3)
                {
                    yesb = false;

                }
                else yesb = true;

            }
        }
        int A2 = 0;
        int B2 = 0;
        B = B - B1;
        int O4 = 0;
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            if ("O" == krv[j, i]) ;
            {
                O3 = O3 + jedinica[j, i];
            }
        }
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            if ("A" == krv[j, i]) ;
            {
                A2 = A2 + jedinica[j, i];
            }
        }
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
            if ("B" == krv[j, i]) ;
            {
                B2 = B2 + jedinica[j, i];
            }
        }
        j = 0;
        for (int i = 0; i < N; i++, j++)
        {
           
            if ("AB" == krv[j, i]) ;
            {
                AB1 = AB1 + jedinica[j, i];
                if (AB1 > B + O3 + A + B + AB)
                {
                    yesab = false;

                }
                else yesab = true;

            }
        }
        if (yes)
        {
            Console.WriteLine("moguce");
        }
        else Console.WriteLine("nemoguce");



    }
}