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

#define rep(i,n) for(i = 0;i < n;++i)
#define all(v) v.begin(), v.end()
using ll = long long;

int main()
{
    ll i,j;
    ll n,a,b,c;
    cin >> n >> a >> b >> c;
    vector<string> s(n);
    for(i = 0;i < n;++i){
        cin >> s.at(i);
    }
    vector<char> ans;
    if(a+b+c == 0){
        cout << "No" << endl;
        return 0;
    }else if(a+b+c == 1){
        for(i = 0;i < n;++i){
            if(s.at(i) == "AB"){
                if(a == 0){
                    ++a;    --b;
                    ans.push_back('A');
                }else{
                    --a;    ++b;
                    ans.push_back('B');
                }
            }else if(s.at(i) == "BC"){
                if(b == 0){
                    ++b;    --c;
                    ans.push_back('B');
                }else{
                    --b;    ++c;
                    ans.push_back('C');
                }
            }else if(s.at(i) == "AC"){
                if(c == 0){
                    ++c;    --a;
                    ans.push_back('C');
                }else{
                    --c;    ++a;
                    ans.push_back('A');
                }
            }
            if(a < 0 || b < 0 || c < 0){
                cout << "No" << endl;
                return 0;
            }
        }
    }else if(a + b + c == 2){
        for(i = 0;i < n;++i){
            if(s.at(i) == "AB"){
                if(a == 1 && b == 1){
                    if(i+1 < n){
                        if(s.at(i+1) == "BC"){
                            --a;    ++b;
                            ans.push_back('B');
                        }else if(s.at(i+1) == "AC"){
                            ++a;    --b;
                            ans.push_back('A');
                        }else{
                            ++a;    --b;
                            ans.push_back('A');
                        }
                    }else{
                        ++a;    --b;
                        ans.push_back('A');
                    }
                }else{
                    if(a > b){
                        --a;    ++b;
                        ans.push_back('B');
                    }else{
                        ++a;    --b;
                        ans.push_back('A');
                    }
                }
            }else if(s.at(i) == "BC"){
                if(b == 1 && c == 1){
                    if(i+1 < n){
                        if(s.at(i+1) == "AC"){
                            --b;    ++c;
                            ans.push_back('C');
                        }else if(s.at(i+1) == "AB"){
                            ++b;    --c;
                            ans.push_back('B');
                        }else{
                            ++b;    --c;
                            ans.push_back('B');
                        }
                    }else{
                        ++b;    --c;
                        ans.push_back('B');
                    }
                }else{
                    if(b > c){
                        --b;    ++c;
                        ans.push_back('C');
                    }else{
                        ++b;    --c;
                        ans.push_back('B');
                    }
                }
            }else if(s.at(i) == "AC"){
                if(c == 1 && a == 1){
                    if(i+1 < n){
                        if(s.at(i+1) == "AB"){
                            --c;    ++a;
                            ans.push_back('A');
                        }else if(s.at(i+1) == "BC"){
                            ++c;    --a;
                            ans.push_back('C');
                        }else{
                            ++c;    --a;
                            ans.push_back('C');
                        }
                    }else{
                        ++c;    --a;
                        ans.push_back('C');
                    }
                }else{
                    if(c > a){
                        --c;    ++a;
                        ans.push_back('A');
                    }else{
                        ++c;    --a;
                        ans.push_back('C');
                    }
                }
            }
            if(a < 0 || b < 0 || c < 0){
                cout << "No" << endl;
                return 0;
            }
        }
    }else{
        for(i = 0;i < n;++i){
            if(s.at(i) == "AB"){
                if(a > b){
                    --a;    ++b;
                    ans.push_back('B');
                }else{
                    ++a;    --b;
                    ans.push_back('A');
                }
            }else if(s.at(i) == "BC"){
                if(b > c){
                    --b;    ++c;
                    ans.push_back('C');
                }else{
                    ++b;    --c;
                    ans.push_back('B');
                }
            }else if(s.at(i) == "AC"){
                if(c > a){
                    --c;    ++a;
                    ans.push_back('A');
                }else{
                    ++c;    --a;
                    ans.push_back('C');
                }
            }
            if(a < 0 || b < 0 || c < 0){
                cout << "No" << endl;
                return 0;
            }
        }
    }
    cout << "Yes" << endl;
    for(i = 0;i < ans.size();++i){
        cout << ans.at(i) << endl;
    }
    return 0;
}

Measured memory_bytes: 6732