#include <bits/stdc++.h>

using namespace std;

static int resenje[10005][4];

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n;
    cin>>n;
    int O,A,B,AB;
    cin>>O>>A>>B>>AB;
    vector<pair<string,int>> pacijenti(n);
    for(int i=0;i<n;i++)
    {
        string x;
        int y;
        cin>>x;
        cin>>y;
        pacijenti[i]={x,y};
    }
    bool moguce=true;
    for(int i=0;i<n;i++)
    {
        if(pacijenti[i].first=="O")
        {
            while(pacijenti[i].second>0 && O>0)
            {
                pacijenti[i].second--;
                O--;
                resenje[i][0]++;
            }
            if(pacijenti[i].second>0)
            {
                moguce=false;
                break;
            }
        }
    }
    if(!moguce)
    {
        cout<<"nemoguce";
        return 0;
    }
    for(int i=0;i<n;i++)
    {
        if(pacijenti[i].first=="A")
        {
            while(pacijenti[i].second>0 && A>0)
            {
                pacijenti[i].second--;
                A--;
                resenje[i][1]++;
            }
            while(pacijenti[i].second>0 && O>0)
            {
                pacijenti[i].second--;
                O--;
                resenje[i][0]++;
            }
            if(pacijenti[i].second>0)
            {
                moguce=false;
                break;
            }
        }
    }
    if(!moguce)
    {
        cout<<"nemoguce";
        return 0;
    }
    for(int i=0;i<n;i++)
    {
        if(pacijenti[i].first=="B")
        {
            while(pacijenti[i].second>0 && B>0)
            {
                pacijenti[i].second--;
                B--;
                resenje[i][2]++;
            }
            while(pacijenti[i].second>0 && O>0)
            {
                pacijenti[i].second--;
                O--;
                resenje[i][0]++;
            }
            if(pacijenti[i].second>0)
            {
                moguce=false;
                break;
            }
        }
    }
    if(!moguce)
    {
        cout<<"nemoguce";
        return 0;
    }
    for(int i=0;i<n;i++)
    {
        if(pacijenti[i].first=="AB")
        {
            while(pacijenti[i].second>0 && AB>0)
            {
                pacijenti[i].second--;
                AB--;
                resenje[i][3]++;
            }
            while(pacijenti[i].second>0 && A>0)
            {
                pacijenti[i].second--;
                A--;
                resenje[i][1]++;
            }
            while(pacijenti[i].second>0 && B>0)
            {
                pacijenti[i].second--;
                B--;
                resenje[i][2]++;
            }
            while(pacijenti[i].second>0 && O>0)
            {
                pacijenti[i].second--;
                O--;
                resenje[i][0]++;
            }
            if(pacijenti[i].second>0)
            {
                moguce=false;
                break;
            }
        }
    }
    if(!moguce)
    {
        cout<<"nemoguce";
        return 0;
    }
    cout<<"moguce"<<endl;;
    for(int i=0;i<n;i++)
    {
        cout<<resenje[i][0]<<" "<<resenje[i][1]<<" "<<resenje[i][2]<<" "<<resenje[i][3];
        cout<<endl;
    }
    return 0;
}