#include #include #include #include #include using namespace std; using mint=atcoder::modint998244353; int N,M; int add[3000],cnt[3000]; mint ans[1501]; mint Yd[3000]; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); cin>>N>>M; vectorYs; Ys.reserve(2*N); vector > >Xs; Xs.reserve(4*N); for(int i=0;i>X>>Y>>H; long x=X+Y,y=X-Y; long d=M-H; Ys.push_back(y-d); Ys.push_back(y+d); Xs.push_back(make_pair(x-d,make_pair(y-d,true))); Xs.push_back(make_pair(x-d,make_pair(y+d,false))); Xs.push_back(make_pair(x+d,make_pair(y-d,false))); Xs.push_back(make_pair(x+d,make_pair(y+d,true))); } sort(Ys.begin(),Ys.end()); Ys.erase(unique(Ys.begin(),Ys.end()),Ys.end()); for(int j=0;j+1