'use strict'
function main(input) {
  const tmp = Array.from(input.split('\n'));
  const N = parseInt(tmp.shift(), 10);

  let a = [];
  let b = [];
  let c = [];
  for (let abc of tmp) {
    abc = abc.split(' ').map((elem) => parseInt(elem, 10));
    a.push(abc[0]);
    b.push(abc[1]);
    c.push(abc[2]);
  }

  let dp = new Array(N + 1);
  for (let i = 0; i <= N; i++) {
    dp[i] = new Array(3).fill(0);
  }
  const happiestValDay1 = [a[0], b[0], c[0]].reduce((max, elem) => Math.max(max, elem));

  dp[1][0] = happiestValDay1;
  dp[1][1] = happiestValDay1;
  dp[1][2] = happiestValDay1;
  for (let day = 2; day <= N; day++) {
    dp[day][0] = Math.max(dp[day][0], dp[day - 1][1] + b[day - 1]);
    dp[day][0] = Math.max(dp[day][0], dp[day - 1][2] + c[day - 1]);

    dp[day][1] = Math.max(dp[day][1], dp[day - 1][0] + a[day - 1]);
    dp[day][1] = Math.max(dp[day][1], dp[day - 1][2] + c[day - 1]);

    dp[day][2] = Math.max(dp[day][2], dp[day - 1][0] + a[day - 1]);
    dp[day][2] = Math.max(dp[day][2], dp[day - 1][1] + b[day - 1]);
  }
  const answer = [dp[N][0], dp[N][1], dp[N][2]].reduce((max, elem) => Math.max(max, elem));
  console.log(answer);
}
main(require('fs').readFileSync('/dev/stdin', 'utf8'));