#include<iostream>
using namespace std;
int n, m, x, y, v;
#define N 5010
int a[N][N],ans = 0;
int max(int a, int b) {
return a >= b ? a : b;
}
int main() {
cin >> n >> m;
for (int i = 0;i<n;i++) {
cin >> x >> y >> v;
a[x+1][y+1]+=v;
}
for (int i = 1; i <= N; i++) {
for (int j = 1; j <=N; j++) {
a[i][j] = a[i - 1][j] + a[i][j - 1] -a[i-1][j-1]+a[i][j];
}
}
for (int i = m; i <= N; i++) {
for (int j = m; j <= N; j++) {
int sum = a[i][j] - a[i - m][j] - a[i][j - m] +a[i - m][j - m];
ans = max(ans, sum);
}
}
cout << ans<<endl;
return 0;
}