'use strict';

function Main(inputs) {
  // 1行目がinput[0], 2行目がinput[1], …に入る
  const input = inputs.split("\n");
  const n = Number(input[0]);
  const abc = input.slice(1, n + 1).map((t) => {
    const a = t.split(' ');
    return {
      a: Number(a[0]),
      b: Number(a[1]),
      c: Number(a[2])
    }
  });
  const dp = {
    a: [0],
    b: [0],
    c: [0]
  };
  for(let i = 0; i < n; i++){
    dp.a.push(Math.max(dp.b[i] + abc[i].a, dp.c[i] + abc[i].a));
    dp.b.push(Math.max(dp.a[i] + abc[i].b, dp.c[i] + abc[i].b));
    dp.c.push(Math.max(dp.a[i] + abc[i].c, dp.b[i] + abc[i].c));
  }
  console.log(Math.max(dp.a.pop(), dp.b.pop(), dp.c.pop()));
}
//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
