#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n , kolicina , kolicinaO , kolicinaA , kolicinaB , kolicinaAB, kolicinaC , i , b=0;
    char tipkrvi[2] ;
    scanf("%d" , &n);
    scanf("%d %d %d %d" , &kolicinaO , &kolicinaA , &kolicinaB , &kolicinaC) ;
    int pacijentiTip[n];
    int pacijentiKolicina[n];
    int nizkolicina[n*4] ;
    kolicinaAB = kolicinaC;
    for(i=0;i<n;i++){
        scanf("%s %d" , &tipkrvi , &kolicina) ;
        pacijentiKolicina[i] = kolicina ;
        if(strcmp(tipkrvi, "O") == 0)
            pacijentiTip[i] = 0 ;
        else if(strcmp(tipkrvi, "A") == 0)
            pacijentiTip[i] = 1 ;
        else if(strcmp(tipkrvi, "B") == 0)
            pacijentiTip[i] = 2 ;
        else
            pacijentiTip[i] = 3 ;
    }

    for(i=0;i<n*4;i++){
        nizkolicina[i] = 0 ;
    }

    for(i=0;i<n && b==0;i++){
        if(pacijentiTip[i]==0){
            for(;pacijentiKolicina[i]>0 && kolicinaO>0;){
                kolicinaO--;
                pacijentiKolicina[i]-- ;
                nizkolicina[i*4]++ ;
            }
            if(pacijentiKolicina[i]>0){
                b++ ;
            }
        }
    }

    for(i=0;i<n && b==0;i++){
        if(pacijentiTip[i]==1){
            for(;pacijentiKolicina[i]>0 && kolicinaA>0;){
                kolicinaA--;
                pacijentiKolicina[i]-- ;
                nizkolicina[i*4 + 1]++;
            }
            if(pacijentiKolicina[i]>0){
                for(;pacijentiKolicina[i]>0 && kolicinaO>0;){
                    kolicinaO--;
                    pacijentiKolicina[i]--;
                    nizkolicina[i*4] = nizkolicina[i*4] + 1 ;
                }
            }
            if(pacijentiKolicina[i]>0){
                b++ ;
            }
        }
    }

    for(i=0;i<n && b==0;i++){
        if(pacijentiTip[i]==2){
            for(;pacijentiKolicina[i]>0 && kolicinaB>0;){
                kolicinaB--;
                pacijentiKolicina[i]--;
                nizkolicina[i*4 + 2]++;
            }
            if(pacijentiKolicina[i]>0){
                for(;pacijentiKolicina[i]>0 && kolicinaO>0;){
                    kolicinaO--;
                    pacijentiKolicina[i]--;
                    nizkolicina[i*4]++;
                }
            }
            if(pacijentiKolicina[i]>0){
                b++ ;
            }
        }
    }

    for(i=0;i<n && b==0;i++){
        if(pacijentiTip[i]==3){
            for(;pacijentiKolicina[i]>0 && kolicinaAB>0;){
                kolicinaAB--;
                pacijentiKolicina[i]--;
                nizkolicina[i*4 + 3]++;
            }
            if(pacijentiKolicina[i]>0){
                for(;pacijentiKolicina[i]>0 && kolicinaA>0;){
                    kolicinaA--;
                    pacijentiKolicina[i]--;
                    nizkolicina[i*4 + 1]++;
                }
            }
            if(pacijentiKolicina[i]>0){
                for(;pacijentiKolicina[i]>0 && kolicinaB>0;){
                    kolicinaB--;
                    pacijentiKolicina[i]-- ;
                    nizkolicina[i*4 + 2]++;
                }
            }
            if(pacijentiKolicina[i]>0){
                for(;pacijentiKolicina[i]>0 && kolicinaO>0;){
                    kolicinaO--;
                    pacijentiKolicina[i]--;
                    nizkolicina[i*4]++;
                }
            }
            if(pacijentiKolicina[i]>0){
                b++ ;
            }
        }
    }
    if(b>0){
        printf("nemoguce\n") ;
    }
    else{
        printf("moguce\n") ;
        for(i=0;i<n;i++){
            printf("%d %d %d %d\n" , nizkolicina[i*4] , nizkolicina[i*4 + 1] , nizkolicina[i*4 + 2] , nizkolicina[i*4 + 3]) ;
        }
    }
}