



import os
def   UpperCAmelCase							(		)							->					Dict:
	_snake_case					:							Any					     =   os.path.dirname(os.path.realpath(a_     )     )
	_snake_case					:							int					     =   os.path.join(a_				,  """triangle.txt"""     )

	with open(a_     ) as f:
		_snake_case					:							Union[str, Any]					     =   f.readlines()

	_snake_case					:							int					     =   [[int(a_     ) for y in x.rstrip("""\r\n"""     ).split(""" """     )] for x in triangle]

	for i in range(1				,  len(a_     )     ):
		for j in range(len(a[i]     )     ):
			_snake_case					:							Optional[int]					     =   a[i - 1][j] if j != len(a[i - 1]     ) else 0
			_snake_case					:							Any					     =   a[i - 1][j - 1] if j > 0 else 0
			a[i][j] += max(a_				,  a_     )
	return max(a[-1]     )


if __name__ == "__main__":
						print(solution())







"""simple docstring"""







def       __UpperCAmelCase		(		a_      :		list[list[int]]					)  ->							bool:
   # must be
   _UpperCAmelCase 						=       [list(a_					) for row in matrix]
   if matrix and isinstance(a_     ,	a_					):
      if isinstance(matrix[0]     ,	a_					):
         _UpperCAmelCase 						=       0
         for row in matrix:
            if prev_len == 0:
               _UpperCAmelCase 						=       len(a_					)
               _UpperCAmelCase 						=       True
            else:
               _UpperCAmelCase 						=       prev_len == len(a_					)
      else:
         _UpperCAmelCase 						=       True
   else:
      _UpperCAmelCase 						=       False

   return result
def       __UpperCAmelCase		(		a_      :		list[list[int]]					)  ->							None:
   if check_matrix(a_					) and len(a_					) > 0:
      _UpperCAmelCase 						=       [list(a_					) for row in a]
      _UpperCAmelCase 						=       len(a_					)
      if isinstance(a[0]     ,	a_					):
         _UpperCAmelCase 						=       len(a[0]					)
      else:
         for dat in a:
            print(a_					)
         return

      # horizotal printing increasing
      for i in range(0     ,	a_					):
         print(a[0][i]					)
      # vertical printing down
      for i in range(1     ,	a_					):
         print(a[i][mat_col - 1]					)
      # horizotal printing decreasing
      if mat_row > 1:
         for i in range(mat_col - 2     ,	-1     ,	-1					):
            print(a[mat_row - 1][i]					)
        # vertical printing up
      for i in range(mat_row - 2     ,	0     ,	-1					):
         print(a[i][0]					)
      _UpperCAmelCase 						=       [row[1 : mat_col - 1] for row in a[1 : mat_row - 1]]
      if len(a_					) > 0:
         spiral_print_clockwise(a_					)
      else:
         return
   else:
      print("Not a valid matrix"					)
      return
def       __UpperCAmelCase		(		a_      :		list[list]					)  ->							list[int]:
   if matrix:
      return list(matrix.pop(0					)					) + spiral_traversal(list(zip(*a_					)					)[::-1]					)
   else:
      return []


# driver code
if __name__ == "__main__":
  import doctest

  doctest.testmod()

  SCREAMING_SNAKE_CASE_  					= [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
  spiral_print_clockwise(a)

