#include <iostream>

using namespace std;

int main()
{
    int n, o, a, b, ab;
    int krv[10000], pacijent[4][10000], ab_koef[10000], broj_ab = 0;
    string krvna_g[10000];
    bool broken = false;
    cin >> n >> o >> a >> b >> ab;
    for(int i = 0; i < n; i ++){
        cin >> krvna_g[i];
        cin >> krv[i];
    }
    for(int i = 0; i < n; i ++){
        if(krvna_g[i] == "O"){
            if(o > krv[i]){
                pacijent[0][i] = krv[i];
                pacijent[1][i] = 0;
                pacijent[2][i] = 0;
                pacijent[3][i] = 0;
                o -= krv[i];
            }
            else{
                cout << "nemoguce";
                broken = true;
                break;
            }
        }

        else if(krvna_g[i] == "A"){
            if(a > krv[i]){
                pacijent[0][i] = 0;
                pacijent[1][i] = krv[i];
                pacijent[2][i] = 0;
                pacijent[3][i] = 0;
                a -= krv[i];
            }
            else{
                if(a + o < krv[i]){
                    cout << "nemoguce";
                    broken = true;
                    break;
                }
                else{
                    pacijent[0][i] = krv[i] - a;
                    pacijent[1][i] = a;
                    pacijent[2][i] = 0;
                    pacijent[3][i] = 0;
                    o = o - (krv[i] - a);
                    a = 0;
                }
            }
        }

        else if(krvna_g[i] == "B"){
            if(b > krv[i]){
                pacijent[0][i] = 0;
                pacijent[1][i] = 0;
                pacijent[2][i] = krv[i];
                pacijent[3][i] = 0;
                b -= krv[i];
            }
            else{
                if(b + o < krv[i]){
                    cout << "nemoguce";
                    broken = true;
                    break;
                }
                else{
                    pacijent[0][i] = krv[i] - b;
                    pacijent[1][i] = 0;
                    pacijent[2][i] = b;
                    pacijent[3][i] = 0;
                    o = o - (krv[i] - b);
                    b = 0;
                }
            }
        }

        else if(krvna_g[i] == "AB"){
            if(ab > krv[i]){
                pacijent[0][i] = 0;
                pacijent[1][i] = 0;
                pacijent[2][i] = krv[i];
                pacijent[3][i] = 0;
                ab -= krv[i];
            }
            else{
                pacijent[0][i] = 0;
                pacijent[1][i] = 0;
                pacijent[2][i] = 0;
                pacijent[3][i] = ab;
                krv[i] -= ab;
                ab_koef[broj_ab] = i;
                broj_ab ++;
            }
        }
    }
    if(broken == false){
        for(int i = 0; i < broj_ab; i ++){
            if(b > krv[ab_koef[i]]){
                pacijent[2][ab_koef[i]] = krv[ab_koef[i]];
                b -= krv[ab_koef[i]];
            }
            else{
                pacijent[2][ab_koef[i]] = b;
                krv[ab_koef[i]] -= b;
                b = 0;
                if(a > krv[ab_koef[i]]){
                    pacijent[1][ab_koef[i]] = krv[ab_koef[i]];
                    a -= krv[ab_koef[i]];
                }
                else{
                    pacijent[1][ab_koef[i]] = a;
                    krv[ab_koef[i]] -= a;
                    a = 0;
                    if(o > krv[ab_koef[i]]){
                        pacijent[0][ab_koef[i]] = krv[ab_koef[i]];
                        o -= krv[ab_koef[i]];
                    }
                    else{
                        cout << "nemoguce";
                        broken = true;
                        break;
                    }
                }
            }
        }
    }
    if(broken == false){
        cout << "moguce";
        for(int i = 0; i < n; i ++){
            cout << pacijent[0][i] << " " << pacijent[1][i] << " " << pacijent[2][i] << " " << pacijent[3][i] << endl;
        }
    }
    return 0;
}