#include <bits/stdc++.h>
#pragma optimize("Ofast")
#pragma optimize("O3")

using namespace std;

using ll = long long;

const int INF = 1e9 + 7, mod = 998244353;

#ifdef LOCAL
const int MAXN = 1e2;
#else
const int MAXN = 1e6;
#endif

// int get(int x1, int type1, int x2, int type2){
//     if(type1 == type2 )
// }

int main() {
#ifdef LOCAL
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif
    int t, n, m;
    cin >> t >> n >> m;
    vector<int> pos(n);
    for(int & i : pos) cin >> i;
    string s;
    cin >> s;
    if(m % 2){
        cout << "Yes\n";
        if(t > 1)
            cout << m / 2 << '\n';
        if(t > 2)
            cout << m / 2 << ' ' << m / 2;
    }
    return 0;
}


//                    {{{{{{
//                    {{{{{           
//                ____{____     MEGAKNIGHT!!!                            
//               /         \  //
//              /  ==   ==  \//
//              |           |
//   __^__     ----------------      __^__
//  /     \    |              |     /     \
// <       >   |              |    <       >
//  \     /_____               _____\     /