#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define mp make_pair
#define pb push_back
#define ip pair<ll,ll>
#define iip pair<pair<ll,ll>,int>
#define ff first
#define ss second
#define MAX 2000005
#define f(j,i,k) for(ll j=i;j<k;j++)
#define fe(j,i,k) for(ll j=i;j<=k;j++)
#define fr(j,i,k) for(ll j=i;j>=k;j--)

const ll MOD = 1000000007;

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    ll t;
    cin>>t;
    while(t--){
        ll n,k;
        cin>>n>>k;
        ll x[n];
        ll y[n];
        f(i,0,n)
            cin>>x[i]>>y[i];
        ll A[n][n];
        f(i,0,n)
            f(j,0,n){
                if(i==j){
                    A[i][j]=0;
                    continue;
                }
                A[i][j]=LLONG_MAX;
                if(abs(x[i]-x[j])+abs(y[i]-y[j])<=k)
                    A[i][j]=1;
                
            }

        ll found=0;
        f(i,0,n){
            ll here=1;
            f(j,0,n){
                if(A[i][j]==LLONG_MAX){
                    here=0;
                    break;
                }
            }
            if(here){
                found=1;
                break;
            }
                
        }
        if(found)
            cout<<1<<endl;
        else
        {
            cout<<-1<<endl;
        }
        
    //     f(i,0,n){
    //         f(j,0,n){
    //             cout<<A[i][j]<<" ";
    //         }
    //         cout<<endl;
    // }
    //     cout<<endl;
    //     ll dist[n][n];
    //     f(i,0,n)
    //         f(j,0,n)
    //             dist[i][j]=A[i][j];
    //     f(k,0,n)
    //         f(i,0,n)
    //             f(j,0,n){
    //                 if (dist[i][k]!=LLONG_MAX && dist[k][j]!=LLONG_MAX && dist[i][k] + dist[k][j] < dist[i][j])  
    //                     dist[i][j] = dist[i][k] + dist[k][j];
    //             }
    //        f(i,0,n){
    //         f(j,0,n){
    //             cout<<dist[i][j]<<" ";
    //         }
    //         cout<<endl;
    // }
    //     ll mymax=LLONG_MIN;
    //     f(i,0,n)
    //         f(j,0,n)
    //             if(dist[i][j]>mymax)
    //                 mymax=dist[i][j];
    //     if(mymax==LLONG_MAX){
    //         cout<<-1<<endl;
    //     }
    //     else
    //     {
    //         if(mymax&1)
    //         {

    //         }
    //         cout<<max(1ll,mymax-2)<<endl;
    //     }
        
    }
}