
'''simple docstring'''

import math

class 			UpperCAmelCase				:





		"""simple docstring"""





		def __init__(    self  ,					_snake_case  ,					_snake_case  ,					_snake_case     )				->    str:
				_UpperCamelCase       : Union[str, Any]    =      x
				_UpperCamelCase       : List[Any]    =      y
				_UpperCamelCase       : List[str]    =      z




		def __repr__(    self     )				->    str:
				return F'''Point({self.x}, {self.y}, {self.z})'''







def 						snake_case__	(      UpperCamelCase			,UpperCamelCase	) ->      str:
		return math.sqrt(abs((b.x - a.x) ** 2 + (b.y - a.y) ** 2 + (b.z - a.z) ** 2	)	)


if __name__ == "__main__":
	import doctest

	doctest.testmod()







'''simple docstring'''

import os







def 						snake_case__	(      ) ->      Tuple:
		_UpperCamelCase       : Dict    =      os.path.dirname(os.path.realpath(UpperCamelCase	)	)
		_UpperCamelCase       : str    =      os.path.join(UpperCamelCase			,'''triangle.txt'''	)

		with open(UpperCamelCase	) as f:
				_UpperCamelCase       : Optional[Any]    =      f.readlines()

		_UpperCamelCase       : List[str]    =      [[int(UpperCamelCase	) for y in x.rstrip('''\r\n'''	).split(''' '''	)] for x in triangle]

		for i in range(1			,len(UpperCamelCase	)	):
				for j in range(len(a[i]	)	):
						_UpperCamelCase       : str    =      a[i - 1][j] if j != len(a[i - 1]	) else 0
						_UpperCamelCase       : Any    =      a[i - 1][j - 1] if j > 0 else 0
						a[i][j] += max(UpperCamelCase			,UpperCamelCase	)
		return max(a[-1]	)


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





