#include <bits/stdc++.h>
using namespace std;
const int Q = 1 << 8;
int X[Q], Y[Q], n;
int uni[Q * Q];
int ux[Q], uy[Q];
int cnt[Q][Q];
int Cov(int d) {
  int mx = 0, my = 0;
  for (int i = 1; i <= n; i++)
    ux[++mx] = X[i] - d, ux[++mx] = X[i] + d + 1, uy[++my] = Y[i] - d,
    uy[++my] = Y[i] + d + 1;
  sort(ux + 1, ux + mx + 1), sort(uy + 1, uy + my + 1);
  mx = unique(ux + 1, ux + mx + 1) - ux - 1;
  my = unique(uy + 1, uy + my + 1) - uy - 1;
  for (int i = 1; i < mx; i++)
    for (int j = 1; j < my; j++) cnt[i][j] = 0;
  for (int i = 1; i <= n; i++) {
    int x0 = (lower_bound(ux + 1, ux + (mx) + 1, X[i] - d) - ux),
        x1 = (lower_bound(ux + 1, ux + (mx) + 1, X[i] + d + 1) - ux),
        y0 = (lower_bound(uy + 1, uy + (my) + 1, Y[i] - d) - uy),
        y1 = (lower_bound(uy + 1, uy + (my) + 1, Y[i] + d + 1) - uy);
    cnt[x0][y0]++, cnt[x1][y1]++;
    cnt[x0][y1]--, cnt[x1][y0]--;
  }
  long long tmp = 0;
  for (int i = 1; i < mx; i++)
    for (int j = 1; j < my; j++) {
      cnt[i][j] += cnt[i - 1][j] + cnt[i][j - 1] - cnt[i - 1][j - 1];
      if (cnt[i][j]) tmp += 1LL * (ux[i + 1] - ux[i]) * (uy[j + 1] - uy[j]);
    }
  return tmp % 998244353;
}
int dd[4] = {998244353 - (998244353 + 1) / 6, (998244353 + 1) / 2,
             998244353 - (998244353 + 1) / 2, (998244353 + 1) / 6};
int main() {
  int k;
  scanf("%d%d", &n, &k);
  if (k == 0) return 0 & puts("0");
  for (int i = 1; i <= n; i++) scanf("%d%d", &X[i], &Y[i]);
  int maxn = 0;
  for (int i = 1; i <= n; i++)
    for (int j = i + 1; j <= n; j++)
      uni[++maxn] = (max(abs(X[i] - X[j]), abs(Y[i] - Y[j])) + 1) >> 1;
  uni[++maxn] = 0;
  sort(uni + 1, uni + maxn + 1);
  maxn = unique(uni + 1, uni + maxn + 1) - uni - 1;
  while (uni[maxn] >= k) --maxn;
  uni[++maxn] = k;
  long long als = 0;
  for (int i = 1; i < maxn; i++) {
    if (uni[i + 1] - uni[i] <= 4) {
      for (int j = uni[i]; j < uni[i + 1]; j++) als += Cov(j);
      continue;
    }
    int sm = 0;
    for (int j = 0; j <= 3; j++) {
      sm = (sm + Cov(uni[i] + j)) % 998244353;
      long long pi = 1LL * sm * dd[j] % 998244353;
      for (int k = 0; k < 4; k++)
        if (j != k) pi = pi * (uni[i + 1] - uni[i] - 1 - k) % 998244353;
      als += pi;
    }
  }
  printf(
      "%lld\n",
      (1LL * Cov(k) * k % 998244353 - als % 998244353 + 998244353) % 998244353);
  return 0;
}
