





"""simple docstring"""






def     __A      (			a_						:int)		->		int:

				if not isinstance(a_   ,       a_):
								raise ValueError('''multiplicative_persistence() only accepts integral values''')
				if num < 0:
								raise ValueError('''multiplicative_persistence() does not accept negative values''')

				__a :						Dict			       =  0
				__a :						Optional[Any]			       =  str(a_)

				while len(a_) != 1:
								__a :						int			       =  [int(a_) for i in num_string]

								__a :						Optional[Any]			       =  1
								for i in range(0   ,       len(a_)):
												total *= numbers[i]

								__a :						Optional[Any]			       =  str(a_)

								steps += 1
				return steps

def     __A      (			a_						:int)		->		int:

				if not isinstance(a_   ,       a_):
								raise ValueError('''additive_persistence() only accepts integral values''')
				if num < 0:
								raise ValueError('''additive_persistence() does not accept negative values''')

				__a :						Tuple			       =  0
				__a :						Union[str, Any]			       =  str(a_)

				while len(a_) != 1:
								__a :						Tuple			       =  [int(a_) for i in num_string]

								__a :						Tuple			       =  0
								for i in range(0   ,       len(a_)):
												total += numbers[i]

								__a :						Optional[Any]			       =  str(a_)

								steps += 1
				return steps


if __name__ == "__main__":
		import doctest

		doctest.testmod()






"""simple docstring"""






from __future__ import annotations

import typing
from collections import Counter

def     __A      (			a_						:int)		->		typing.Counter[int]:
				__a :						typing.Counter[int]			       =  Counter()
				for base in range(1   ,       max_perimeter + 1):
								for perpendicular in range(a_   ,       max_perimeter + 1):
												__a :						Any			       =  (base * base + perpendicular * perpendicular) ** 0.5
												if hypotenuse == int(a_):
																__a :						List[Any]			       =  int(base + perpendicular + hypotenuse)
																if perimeter > max_perimeter:
																				continue
																triplets[perimeter] += 1
				return triplets

def     __A      (			a_						:int = 10_00)		->		int:
				__a :						Dict			       =  pythagorean_triple(a_)
				return triplets.most_common(1)[0][0]


if __name__ == "__main__":
		print(F'Perimeter {solution()} has maximum solutions')