#include <bits/stdc++.h>
using namespace std;
int arr[100005], oddCount = 0, evenCount = 0;
;
vector<int> odds, evens;
vector<int> oddSets[100005], evenSets[100005];
int main(void) {
  int totalElements, k, p, i, j;
  cin >> totalElements >> k >> p;
  for (i = 0; i < totalElements; i++) {
    cin >> arr[i];
    if (arr[i] % 2 == 0)
      evens.push_back(arr[i]);
    else
      odds.push_back(arr[i]);
  }
  if (k - p > odds.size()) {
    cout << "NO";
    return 0;
  }
  for (i = 0; i < k - p; i++) {
    if (oddCount >= odds.size())
      break;
    else
      oddSets[i].push_back(odds[oddCount++]);
  }
  for (i = 0; i < p; i++) {
    if (evenCount >= evens.size())
      break;
    else
      evenSets[i].push_back(evens[evenCount++]);
  }
  int remainingOdds = odds.size() - (k - p);
  for (; i < evens.size(); i++) {
    if (p)
      evenSets[0].push_back(evens[i]);
    else
      oddSets[0].push_back(evens[i]);
  }
  if (remainingOdds % 2) {
    cout << "NO\n";
    return 0;
  }
  if (p > evens.size()) {
    i = evens.size();
    for (i = k - p; i < odds.size(); i += 2) {
      if (evenCount >= p)
        break;
      else {
        evenSets[evenCount].push_back(odds[i]);
        evenSets[evenCount++].push_back(odds[i + 1]);
      }
    }
    for (; i < odds.size(); i++) {
      if (p)
        evenSets[0].push_back(odds[i]);
      else
        oddSets[0].push_back(odds[i]);
    }
  } else {
    for (i = k - p; i < odds.size(); i++) {
      if (p)
        evenSets[0].push_back(odds[i]);
      else
        oddSets[0].push_back(odds[i]);
    }
  }
  if ((oddCount != k - p)) {
    cout << "NO";
    return 0;
  }
  if (evenCount != p) {
    cout << "NO";
    return 0;
  }
  cout << "YES\n";
  for (i = 0; i < oddCount; i++) {
    cout << oddSets[i].size() << " ";
    for (j = 0; j < oddSets[i].size(); j++) cout << oddSets[i][j] << " ";
    cout << "\n";
  }
  for (i = 0; i < evenCount; i++) {
    cout << evenSets[i].size() << " ";
    for (j = 0; j < evenSets[i].size(); j++) cout << evenSets[i][j] << " ";
    cout << "\n";
  }
  return 0;
}
