#include<bits/stdc++.h>
using namespace std;
int T,n,k;
struct node{
int l,r;
} a[1005],b[1005];
int cmp(node x,node y){
if(x.r - x.l != y.r - y.l) return x.r - x.l < y.r - y.l;
return x.l < y.l;
}
void out(int k){
cout<<"Yes\n";
for(int i=1;i<=n;i++){
int t = (a[i].l-1)/k*k+k;
cout<<t<<' ';
}
cout<<endl;
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>T;
while(T--){
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i].l>>a[i].r;
b[i] = a[i];
}
sort(b+1,b+n+1,cmp);
if(b[1].r - b[1].l + 1 >= k){
out(k);
continue;
}
set<int> v;
v.clear();
for(int i=b[1].l;i<=b[1].r;i++){
for(int j=1;j*j<=i;j++){
if(i % j == 0){
if(j >= k) v.insert(j);
if(i / j >= k) v.insert(i/j);
}
}
}
int flag2 = 1;
for(auto x:v){
int flag = 1;
vector<int> vv;
vv.clear();
for(int i=1;i<=n;i++){
int t = (a[i].l-1)/x*x+x;
if(t > a[i].r){
flag = 0;
break;
}
vv.push_back(t);
}
if(flag) {
flag2 = 0;
cout<<"Yes\n";
for(auto c:vv) cout<<c<<' ';
cout<<endl;
break;
}
}
if(flag2 == 1) cout<<"No\n";
}
return 0;
}