#include <bits/stdc++.h>
using namespace std;
bool func(int a[], int n, int x, int even, int odd) {
  if (x > n) return false;
  if (odd == 0) return false;
  if (even == 0 && x % 2 == 0) return false;
  if (x % 2 == 0) {
    if (odd % 2 == 0) {
      odd--;
    }
    if (odd + even >= x) return true;
  }
  if (x % 2 == 1) {
    if (odd >= x) return true;
    if (odd % 2 == 0) {
      odd--;
    }
    if (odd + even >= x) return true;
  }
  return false;
}
int main() {
  int t;
  cin >> t;
  while (t--) {
    int n, x;
    cin >> n >> x;
    int a[n];
    int odd = 0, even = 0;
    for (int i = 0; i < n; i++) {
      cin >> a[i];
      if (a[i] % 2 == 0)
        even++;
      else
        odd++;
    }
    bool f = func(a, n, x, even, odd);
    if (f)
      cout << "YES";
    else
      cout << "NO";
    cout << "\n";
  }
  return 0;
}
