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

int main()
{
    int N,i;
    int KO,KA,KB,KAB;
    scanf("%d",&N);
    int betegeksz[N];
    char betegek[N][2];
    int betegekszki[N][4];
    scanf("%d %d %d %d",&KO,&KA,&KB,&KAB);
    for(i=0;i<N;i++){
        scanf("%s", &betegek[i][0]);
        scanf("%d", &betegeksz[i]);
    }

    for(i=0;i<N;i++){
            betegekszki[i][0]=0;
            betegekszki[i][1]=0;
            betegekszki[i][2]=0;
            betegekszki[i][3]=0;

        if(betegek[i][0]=='O' && betegek[i][1]=='\0'){
            if(betegeksz[i]>KO){
                printf("nemoguce\n");
                return 0;
            }
            else{
                KO-=betegeksz[i];
            }
            betegekszki[i][0]=betegeksz[i];
            betegekszki[i][1]=0;
            betegekszki[i][2]=0;
            betegekszki[i][3]=0;
        }
/*
        if(betegek[i][0]=='A' && betegek[i][1]=='\0' || betegek[i][0]=='B' && betegek[i][1]=='\0' ){
            betegekszki[i][3]=0;
            if(betegeksz[i]>(KO+KA+KB)){
                printf("nemoguce\n");
                return 0;
                }

            else if(betegeksz[i]<=KO){
                betegekszki[i][0]=betegeksz[i];
                betegekszki[i][1]=0;
                betegekszki[i][2]=0;
                KO-=betegeksz[i];
            }
            else if(betegeksz[i]>KO){
                betegekszki[i][0]=KO;
                betegeksz[i]-=KO;
                KO=0;
                if(betegeksz[i]<=KA){
                    betegekszki[i][1]=KA;
                    KA-=betegeksz[i];
                    betegekszki[i][2]=0;
                }
                else if(betegeksz[i]>KA){
                    betegekszki[i][1]=KA;
                    betegeksz[i]-=KA;
                    KA=0;
                        if(betegeksz[i]<=KB){
                            betegekszki[i][2]=betegeksz[i];
                            KB-=betegeksz[i];
                        }
                    }
                }
            }*/
        if(betegek[i][0]=='A' && betegek[i][1]=='\0'){
            betegekszki[i][3]=0;
            if(betegeksz[i]>(KO+KA)){
                printf("nemoguce\n");
                return 0;
                }

            else if(betegeksz[i]<=KA){
                betegekszki[i][0]=betegeksz[i];
                betegekszki[i][1]=0;
                betegekszki[i][2]=0;
                KA-=betegeksz[i];
            }
            else if(betegeksz[i]>KA){
                betegekszki[i][0]=KA;
                betegeksz[i]-=KA;
                KA=0;
                if(betegeksz[i]<=KO){
                    betegekszki[i][1]=KO;
                    KO-=betegeksz[i];
                    betegekszki[i][2]=0;
                }
            }
        }





            if(betegek[i][0]=='B' && betegek[i][1]=='\0'){
            betegekszki[i][3]=0;
            if(betegeksz[i]>(KO+KB)){
                printf("nemoguce\n");
                return 0;
                }

            else if(betegeksz[i]<=KB){
                betegekszki[i][0]=betegeksz[i];
                betegekszki[i][1]=0;
                betegekszki[i][2]=0;
                KB-=betegeksz[i];
            }
            else if(betegeksz[i]>KB){
                betegekszki[i][0]=KB;
                betegeksz[i]-=KB;
                KB=0;
                if(betegeksz[i]<=KO){
                    betegekszki[i][1]=KO;
                    KO-=betegeksz[i];
                    betegekszki[i][2]=0;
                    }
                }
            }








        if(betegek[i][0]=='A' && betegek[i][1]=='B'){
            if(betegeksz[i]>(KO+KA+KB+KAB)){
                printf("nemoguce\n");
                return 0;
                }
            else if(betegeksz[i]<=KAB){
                betegekszki[i][0]=betegeksz[i];
                betegekszki[i][1]=0;
                betegekszki[i][2]=0;
                KAB-=betegeksz[i];
            }
            else if(betegeksz[i]>KAB){
                betegekszki[i][0]=KAB;
                betegeksz[i]-=KAB;
                KAB=0;//
                if(betegeksz[i]<=KA){
                    betegekszki[i][1]=KA;
                    KA-=betegeksz[i];
                    betegekszki[i][2]=0;
                }
                else if(betegeksz[i]>KA){
                    betegekszki[i][1]=KA;
                    betegeksz[i]-=KA;
                    KA=0;
                        if(betegeksz[i]<=KB){
                            betegekszki[i][2]=KB;
                            KB-=betegeksz[i];
                        }
                         else if(betegeksz[i]>KB){
                            betegekszki[i][2]=KB;
                            betegeksz[i]-=KB;
                            KB=0;
                            if(betegeksz[i]<=O){
                                betegekszki[i][3]=betegeksz[i];
                                O-=betegeksz[i];
                            }
                        }
                    }
                }
            }

    }
    printf("moguce\n");
    for(i=0;i<N;i++){
        printf("%d %d %d %d\n",betegekszki[i][0],betegekszki[i][1],betegekszki[i][2],betegekszki[i][3]);
    }
    return 0;
}