#include using namespace std; int main(void){ int n,t; cin>>n>>t; vector,int>>v; for(int i=0;i>l>>r>>p; v.push_back({{l,r},p}); } sort(v.begin(), v.end()); int maxv[200001]={}; priority_queue>pq; int it=0; for(int i=0;i<200001;i++){ while(1){ if(it>=n)break; if(v[it].first.first==i){ pq.push({v[it].second,v[it].first.second}); it++; }else{ break; } } while(1){ if(pq.empty())break; if(pq.top().second<=i-1){ pq.pop(); }else{ break; } } if(pq.empty())continue; maxv[i]=pq.top().first; } long long ans=0; long long dp[200001]={}; for(int i=0;i<200001;i++){ if(i!=0&&dp[i]200000){ if(ans