N = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) C = list(map(int, input().split())) INF = 10**18 dp = [[-INF]*6 for _ in range(N+1)] dp[0][0] = 0 for i in range(N): for j in range(6): if dp[i][j] != -INF: if j == 0: dp[i+1][0] = max(dp[i+1][0], dp[i][0]+A[i]) dp[i+1][1] = max(dp[i+1][1], dp[i][0]+B[i]) dp[i+1][2] = max(dp[i+1][2], dp[i][0]+C[i]) elif j == 1: dp[i+1][1] = max(dp[i+1][1], dp[i][1]+B[i]) dp[i+1][2] = max(dp[i+1][2], dp[i][1]+C[i]) dp[i+1][5] = max(dp[i+1][5], dp[i][1]+A[i]) elif j == 2: dp[i+1][2] = max(dp[i+1][2], dp[i][2]+C[i]) dp[i+1][3] = max(dp[i+1][3], dp[i][2]+B[i]) dp[i+1][4] = max(dp[i+1][4], dp[i][2]+A[i]) elif j == 3: dp[i+1][3] = max(dp[i+1][3], dp[i][3]+B[i]) dp[i+1][4] = max(dp[i+1][4], dp[i][3]+A[i]) elif j == 5: dp[i+1][5] = max(dp[i+1][5], dp[i][5]+A[i]) dp[i+1][3] = max(dp[i+1][3], dp[i][5]+B[i]) else: dp[i+1][4] = max(dp[i+1][4], dp[i][4]+A[i]) print(max(dp[-1]))