## coding: UTF-8

N, A, B, C = map(int,input().split())
S = []
for i in range(N):
    S.append(input()) 

#s = A + B + C
num = [A, B, C]


def step():
    ans = []

    for i in range(N):
        if(ans == 'No'):
            break
        choice = S[i]
        if(i+1 == N):
            next_choice = choice
        else:
            next_choice = S[i+1]
        if(choice == 'AB'):
            if(num[0] == 0):
                #A == 0
                if(num[1] == 0):
                    ans = 'No' #どちらも0なら終わり
                else:
                    #Bだけ正の数なので
                    ans.append('A')
                    num[0] += 1
                    num[1] -= 1
            else:
                # A > 0
                if(num[0] < num[1]):
                    #Aの方が小さいならAを足す
                    ans.append('A')
                    num[0] += 1
                    num[1] -= 1
                elif(num[0] > num[1]):
                    #Bの方が小さいならBを足す
                    #B == 0の場合も含んでいます
                    ans.append('B')
                    num[0] -= 1
                    num[1] += 1
                else:
                    # A == B
                    if(next_choice == 'BC'):
                        #次がBCならBに供給
                        ans.append('B')
                        num[0] -= 1
                        num[1] += 1
                    else:
                        #次がAB,ACならAに供給
                        ans.append('A')
                        num[0] += 1
                        num[1] -= 1
        elif(choice == 'AC'):
            if(num[0] == 0):
                #A == 0
                if(num[2] == 0):
                    ans = 'No' #どちらも0なら終わり
                else:
                    #Cだけ正の数なので
                    ans.append('A')
                    num[0] += 1
                    num[2] -= 1
            else:
                # A > 0
                if(num[0] < num[2]):
                    #Aの方が小さいならAを足す
                    ans.append('A')
                    num[0] += 1
                    num[2] -= 1
                elif(num[0] > num[2]):
                    #Cの方が小さいならCを足す
                    #C == 0の場合も含んでいます
                    ans.append('C')
                    num[0] -= 1
                    num[2] += 1
                else:
                    # A == C
                    if(next_choice == 'BC'):
                        #次がBCならCに供給
                        ans.append('C')
                        num[0] -= 1
                        num[2] += 1
                    else:
                        #次がAB,ACならAに供給
                        ans.append('A')
                        num[0] += 1
                        num[2] -= 1
        else:
            #choice == 'BC'
            if(num[1] == 0):
                #B == 0
                if(num[2] == 0):
                    ans = 'No' #どちらも0なら終わり
                else:
                    #Cだけ正の数なので
                    ans.append('B')
                    num[1] += 1
                    num[2] -= 1
            else:
                #B > 0
                if(num[1] < num[2]):
                    #Bの方が小さいならBを足す
                    ans.append('B')
                    num[1] += 1
                    num[2] -= 1
                elif(num[1] > num[2]):
                    #Cの方が小さいならCを足す
                    #C == 0の場合も含んでいます
                    ans.append('C')
                    num[1] -= 1
                    num[2] += 1
                else:
                    # B == C
                    if(next_choice == 'AB'):
                        #次がABならBに供給
                        ans.append('B')
                        num[1] += 1
                        num[2] -= 1
                    else:
                        #次がAC,BCならCに供給
                        ans.append('C')
                        num[1] -= 1
                        num[2] += 1
        #print('i:{}, choice:{}, next:{}, ans.append:{}, num:{}, ans:{}'.format(i, choice, next_choice, ans[-1], num, ans))
    return ans

answer = step()
#print(type(answer))
if(type(answer) == list):
    print('Yes')
    for i in range(len(answer)):
        print(answer[i])
else:
    print('No')


                




Measured memory_bytes: 85328