#include <bits/stdc++.h>

#define fi first
#define se second
#define pb push_back
#define ppb pop_back
#define pw(x) ((1LL)<<(x))
#define sz(x) (ll)x.size()
#define all(x) x.begin(), x.end()

using ll = long long;
using ld = long double;

using namespace std;

const ll N = 5e5 + 52;
const ll INF = 1e18;
const ll MOD = 998244353;

ll n, m;
ll i, j;
string s;

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    #ifdef LOCAL
        freopen("input.txt","r",stdin);
        freopen("output.txt","w",stdout);
    #endif // LOCAL
    ll t;
    cin >> t;
    cin >> n >> m;
    vector<ll> a(n);
    set<ll> b;
    for (i=0;i<n;i++){
        cin >> a[i];
        b.insert(a[i]%2);
    }
    cin >> s;
    if (sz(b)>1){
        cout << "No\n";
        return 0;
    }
    cout << "Yes\n";
    if (t==1) return 0;
//    if (n!=2) exit(-1);
    if (t==2){
        cout << (m+1)/2 << endl;
    }else if (t==3){
//        exit(-1);
        cout << (m+1)/2 << endl;
        cout << 1 << endl;
        cout << m/2 << " " << (m+1)/2 << endl;
    }
    return 0;
}
