#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int ,int>
#define f first
#define s second
const int inf=1e9+7;
const ll mod=1e9+7;
const int N=2e5+5;
int t,n,m,k,q,x;

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin>>t;
    while(t--)
    {
        cin>>n>>m>>x;
        pii a[n];
        int ind[n];
        for(int i=0; i<n; i++){
            cin>>a[i].f;
            a[i].s=i;
        }
        priority_queue<pii , vector<pii>, greater<pii>> q;
        sort(a,a+n);
        reverse(a,a+n);
        for(int i=0; i<m ;i++){
            q.push({a[i].f,i});
            ind[a[i].s]=i;
        }
        for(int i=m; i<n ;i++){
            pii tmp=q.top();
            q.pop();
            ind[a[i].s]=tmp.s;
            tmp.f+=a[i].f;
            q.push(tmp);
        }
        vector<int>v;
        for(int i=0; i<m ;i++){
            v.push_back(q.top().f);
            q.pop();
        }
        bool ok=1;
        if(abs(v[0]-v[m-1])>x)ok=0;
        if(ok){
            cout <<"YES\n";
            for(int i=0; i<n ;i++){
                cout <<ind[i]+1<<" ";
            }
            cout <<"\n";
        }
        else cout <<"NO\n";
    }

}

