#include using namespace std; const int maxN = 1e5 + 5; const long long oo = 1e16; int n, m; long long a[maxN], b[maxN]; long long dp[maxN][2]; signed main() { freopen("test.inp", "r", stdin); freopen("test.out", "w", stdout); ios_base::sync_with_stdio(false); cin.tie(nullptr);cout.tie(nullptr); cin >> n >> m; for (int i = 1; i <= n; i++) { cin >> a[i] >> b[i]; } dp[0][0] = 0; dp[0][1] = -oo; long long ans = 0; for (int i = 1; i <= m; i++) { dp[i][0] = dp[i - 1][0] + max({a[i] * m, b[i], a[i] * (m - 1) + b[i]}); dp[i][1] = max(dp[i - 1][0], dp[i - 1][1]) + max(a[i], b[i]); ans = max({ans, dp[i][0], dp[i][1]}); } cout << ans << '\n'; }