#include <iostream>
#include <string>

using namespace std;

struct paciens
{
    string s;
    int n;
    int o = 0, a = 0, b = 0, ab = 0;
};

int os(int &o, paciens &p)
{
    if(o >= p.n)
    {
        o -= p.n;
        p.o = p.n;
    }
    else
    {
        cout << "nemoguce";
        return -1;
    }

    return 0;
}

int as(int &o, int &a, paciens &p)
{
    if(a >= p.n)
    {
        p.a = p.n;
        a -= p.n;
        return 1;
    }

    p.a = a;
    p.n -= a;
    a = 0;

    if(o >= p.n)
    {
        o -= p.n;
        p.o = p.n;
    }
    else
    {
        cout << "nemoguce";
        return -1;
    }

}

int bs(int &o, int &b, paciens &p)
{
    if(b >= p.n)
    {
        p.b = p.n;
        b -= p.n;
        return 1;
    }

    p.b = b;
    p.n -= b;
    b = 0;

    if(o >= p.n)
    {
        o -= p.n;
        p.o = p.n;
    }
    else
    {
        cout << "nemoguce";
        return -1;
    }

}

int abs(int &a, int &b, int &ab, int &o, paciens &p)
{
    if(ab >= p.n)
    {
        p.ab = p.n;
        ab -= p.n;
        return 1;
    }

    p.ab = ab;
    p.n -= ab;
    ab = 0;

    if(a > b)
    {
        if(b >= p.n)
        {
            p.b = p.n;
            b -= p.n;
            return 1;
        }
        p.b = b;
        p.n -= b;
        b = 0;

        if(a >= p.n)
        {
            p.a = p.n;
            a -= p.n;
            return 1;
        }

        p.a = a;
        p.n -= a;
        a = 0;

    }
    else
    {
        if(a >= p.n)
        {
            p.a = p.n;
            a -= p.n;
            return 1;
        }

        p.a = a;
        p.n -= a;
        a = 0;

        if(b >= p.n)
        {
            p.b = p.n;
            b -= p.n;
            return 1;
        }
        p.b = b;
        p.n -= b;
        b = 0;
    }

    if(o >= p.n)
    {
        o -= p.n;
        p.o = p.n;
    }
    else
    {
        cout << "nemoguce";
        return -1;
    }


}

int main()
{
    int n;
    cin >> n;
    int o, a, b, ab;
    cin >> o >> a >> b >> ab;


    paciens p[n];

    for(int i = 0; i < n ; i++)
    {
        cin >> p[i].s >> p[i].n;

    }

    for(int i = 0; i < n; i++)
    {
        int c;

        if(p[i].s == "O")
            c = os(o, p[i]);
        else if(p[i].s == "A")
            c = as(o, a, p[i]);
        else if(p[i].s == "B")
            c = bs(o, b, p[i]);
        else
            c = abs(a, b, ab, o, p[i]);

        if(c == -1)
            return 0;

    }

    cout << "moguce" << endl;
    for(int i = 0; i < n; i++)
        cout << p[i].o <<" "<< p[i].a <<" "<< p[i].b <<" "<< p[i].ab<< endl;



    return 0;
}