#include <bits/stdc++.h>
using namespace std;

#define O 0
#define A 1
#define B 2
#define AB 3

int main()
{
    int n; cin >> n;
    int grpO, grpA, grpB, grpAB; cin >> grpO >> grpA >> grpB >> grpAB;

    int bolan[n][4]; // n - broj pacijenta; 0 - O, 1 - A, 2 - B, 3 - AB;
    int trebeAB = 0;
    // TRI DRTSCHNA
    for (int i = 0; i < n; i++)
    {
        bolan[i][0] = 0;
        bolan[i][1] = 0;
        bolan[i][2] = 0;
        bolan[i][3] = 0;

        string pacijent; int grupa; cin >> pacijent >> grupa;
        if (pacijent == "O") { bolan[i][O] += grupa; grpO -= grupa; }
        else if (pacijent == "A")
        {
            if (grpA < grupa) { grpA = 0; bolan[i][A] += grpA; bolan[i][O] += (grupa - grpA); grpO -= (grupa - grpA); }
            else { bolan[i][A] += grupa; grpA -= grupa; }
        }
        else if (pacijent == "B")
        {
            if (grpB < grupa) { grpB = 0; bolan[i][B] += grpB; bolan[i][O] += (grupa - grpB); grpO -= (grupa - grpB); }
            else { bolan[i][B] += grupa; grpB -= grupa; }
        }
        else { trebeAB += grupa; bolan[i][AB] = grupa; }
    }
    // OSTATAK
    if (grpO < 0 || (grpO + grpA + grpB + grpAB) < trebeAB) { cout << "nemoguce"; return 0; } // Slutschaj 'nemoguce'
    cout << "moguce\n";
    for (int i = 0; i < n; i++) // AB zajedno s IZLAZ
    {
        int grupa = bolan[i][AB]; bolan[i][AB] = 0;
        if (grupa == 0) { cout << bolan[i][O] << " " << bolan[i][A] << " " << bolan[i][B] << " " << bolan[i][AB] << "\n";
                          continue; }
        if (grpAB < grupa) { bolan[i][AB] += grpAB; grupa -= grpAB; grpAB = 0; } else { bolan[i][AB] += grupa; grpAB -= grupa; grupa = 0; }
        if (grpA < grupa) { bolan[i][A] += grpA; grupa -= grpA; grpA = 0; } else { bolan[i][A] += grupa; grpA -= grupa; grupa = 0; }
        if (grpB < grupa) { bolan[i][B] += grpB; grupa -= grpB; grpB = 0; } else { bolan[i][B] += grupa; grpB -= grupa; grupa = 0; }
        if (grpO < grupa) { bolan[i][O] += grpO; grupa -= grpO; grpO = 0; } else { bolan[i][O] += grupa; grpO -= grupa; grupa = 0; }
        cout << bolan[i][O] << " " << bolan[i][A] << " " << bolan[i][B] << " " << bolan[i][AB] << "\n";
    }
}