#nullable enable var n = int.Parse(Console.ReadLine()!); var last = ((0L, 0), (0L, 0)); for (var i = 0; i < n; i++) { var input = Console.ReadLine()!.Split(' '); var x = int.Parse(input[0]); var y = int.Parse(input[1]); var d = x == y ? x : 0; var ((s1, l1), (s2, l2)) = last; var xns1 = s1 + d + (l1 == y ? y : 0); var xns2 = s2 + d + (l2 == y ? y : 0); var xns = Math.Max(xns1, xns2); var yns1 = s1 + d + (l1 == x ? x : 0); var yns2 = s2 + d + (l2 == x ? x : 0); var yns = Math.Max(yns1, yns2); last = ((xns, x), (yns, y)); } Console.WriteLine(Math.Max(last.Item1.Item1, last.Item2.Item1));