#include <iostream>

using namespace std;

int main()
{
    int N, A, B, AB, O;
    bool moguce = true;
    cin >> N >> O >> A >> B >> AB;
    pair<string, int> pacijenti[N];
    for(int i = 0; i < N; i++){
        cin >> pacijenti[i].first;
        cin >> pacijenti[i].second;
    }
    int Oi[N], Ai[N], Bi[N], ABi[N];
    for(int i = 0; i < N; ++i){
        Oi[i] = 0;
        Ai[i] = 0;
        Bi[i] = 0;
        ABi[i] = 0;
    }
    for(int i = 0; i < N; i++){
        if(pacijenti[i].first == "O"){
            if(O - pacijenti[i].second < 0){
                moguce = false;
                break;
            }
            O -= pacijenti[i].second;
            Oi[i] = pacijenti[i].second;
            pacijenti[i].second = 0;
        }
    }

    if(moguce){
        for(int i = 0; i < N; i++){
            if(pacijenti[i].first == "A"){
                if(pacijenti[i].second > A){
                    if(pacijenti[i].second > A + O){
                        moguce = false;
                        break;
                    }
                    O -= pacijenti[i].second - A;
                    Ai[i] = A;
                    Oi[i] = pacijenti[i].second - A;
                    A = 0;
                    pacijenti[i].second = 0;
                }
                A -= pacijenti[i].second;
                Ai[i] = pacijenti[i].second;
                pacijenti[i].second = 0;
            }
            else if(pacijenti[i].first == "B"){
                if(pacijenti[i].second > B){
                    if(pacijenti[i].second > B + O){
                        moguce = false;
                        break;
                    }
                    O -= pacijenti[i].second - B;
                    Bi[i] = B;
                    Oi[i] = pacijenti[i].second - B;
                    B = 0;
                    pacijenti[i].second = 0;
                }
                B -= pacijenti[i].second;
                Bi[i] = pacijenti[i].second;
                pacijenti[i].second = 0;
            }
        }
    }
    if(moguce){
        for(int i = 0; i < N; i++){
            if(pacijenti[i].first == "AB"){
                if(AB >= pacijenti[i].second){
                    AB -= pacijenti[i].second;
                    ABi[i] = pacijenti[i].second;
                    pacijenti[i].second = 0;
                }
                else if(AB + O >= pacijenti[i].second){
                    ABi[i] = AB;
                    Oi[i] = pacijenti[i].second - AB;
                    O -= pacijenti[i].second - AB;
                    AB = 0;
                }
                else if(AB + O + A >= pacijenti[i].second){
                    ABi[i] = AB;
                    Oi[i] = O;
                    Ai[i] = pacijenti[i].second - AB - O;
                    A -= pacijenti[i].second - AB - O;
                    AB = 0;
                    O = 0;
                    pacijenti[i].second = 0;
                }
                else if(AB + O + A + B >= pacijenti[i].second){
                    ABi[i] = AB;
                    Oi[i] = O;
                    Ai[i] = A;
                    Bi[i] = pacijenti[i].second - AB - O;
                    B -= pacijenti[i].second - AB - O;
                    AB = 0;
                    O = 0;
                    A = 0;
                    pacijenti[i].second = 0;
                }
                else{
                    moguce = false;
                    break;
                }
            }
        }
    }
    if(!moguce){
        cout << "nemoguce";
    }
    else
    {
        cout << "moguce" << endl;
        for(int i = 0; i < N; i++){
            cout << Oi[i] << " " << Ai[i] << " " << Bi[i] << " " << ABi[i] << endl;
        }
    }
}