#include <bits/stdc++.h>
using namespace std;
 
#define fastio ios_base::sync_with_stdio(0);cin.tie(NULL);cout.tie(NULL)
#define lli long long int
#define rep(i,n,z) for(int i=z;i<n;i++)
#define rrep(i,z) for(int i=z;i>=0;i--)
#define nl cout<<endl
#define vi vector<int>
#define vlli vector<long long int>
#define umap unordered_map
#define pb push_back
#define mp make_pair
#define ss second
#define ff first
#define ipair pair <int,int>
#define llipair pair <lli,lli>
#define pq priority_queue
#define displaymatrix(a,m,n) for(int i=0;i<m;i++){for(int j=0;j<n;j++)cout<<a[i][j]<<" ";cout<<endl;}
#define printarray(a,n) for(int i=0;i<n;i++){cout<<a[i]<<" ";}nl;
#define vinput(a,n) vlli a(n);rep(i,n,0)cin>>a[i]
#define ainput(a,n) rep(i,n,0)cin>>a[i]
#define SO(a) sort(a.begin(),a.end())
#define all(x) (x).begin(),(x).end()
#define SOP(a,comp) sort(a.begin(),a.end(),comp)
#define inf INT_MAX
#define endl '\n'

int main()
{
    fastio;
    int t;
    cin>>t;
    while(t--){
        lli n,k,m;
        cin >> n >> k >> m;
        vinput(a,m);
        set <int> s;
        rep(i,n,0)s.insert(i + 1);
        rep(i,m,0)s.erase(a[i]);
        stack <int> pivot;
        rep(i,m,0)pivot.push(a[m - i - 1]);

        if((n - m)%(k - 1) != 0){
            cout<<"NO"<<endl;
            continue;
        }

        while(!pivot.empty()){
            set <int> newe;
            int mx = 0;
            for(auto x: s){
                if(newe.size() != (k - 1)/2)newe.insert(x);
                else break;
                mx = x;
            }

            if(newe.size() != (k - 1)/2)break;

            while(!pivot.empty() and pivot.top() < mx)pivot.pop();

            if(pivot.empty())break;
            // cout<<"new pivot = "<<pivot.top()<<" mx = "<<mx<<endl;
            for(auto itr = s.lower_bound(pivot.top());itr != s.end();itr++){
                if(newe.size() != (k - 1))newe.insert(*itr);
                else break;
            }
            if(newe.size() != (k - 1))break;

            s.clear();
        }

        if(s.empty())cout<<"YES"<<endl;
        else cout<<"NO"<<endl;
    }
}

// 4
// 4 5 7
// 4 1 3
// 1 2 5
// 2 3 8
// 2 4 1
// 3 4 4

// 4 6 5
// 1 2 1
// 1 3 1
// 1 4 2
// 2 4 1
// 4 3 1
// 3 2 1

// 3 2 10
// 1 2 8
// 1 3 10

// 5 5 15
// 1 2 17
// 3 1 15
// 2 3 10
// 1 4 14
// 2 5 8