#include using namespace std; #define rep(i, n) for(int i = 0; i < (int)n; ++i) #define FOR(i, a, b) for(int i = a; i < (int)b; ++i) #define rrep(i, n) for(int i = ((int)n - 1); i >= 0; --i) typedef long long ll; typedef long double ld; const int Inf = 1e9; const double EPS = 1e-9; const int MOD = 1e9 + 7; int main() { cin.tie(nullptr); ios::sync_with_stdio(0); int n, l; cin >> n >> l; vector x(n), w(n), t(n); rep (i, n) cin >> x[i] >> w[i] >> t[i]; int time = 0; int pos = 0; rep (i, n) { pos += x[i] + w[i]; time += x[i]; int cnt = time / t[i]; if (cnt != 0 && cnt % 2 == 0) { int rem = time % t[i] + t[i]; time += rem; } time += w[i]; } time += l - pos; cout << time << endl; return 0; }