





def  A					(				UpperCAmelCase					):
					if not isinstance(UpperCAmelCase	,	UpperCAmelCase					):
										_snake_case							:       Optional[Any]												= F"""Input value of [number={number}] must be an integer"""
										raise TypeError(UpperCAmelCase					)
					if number < 1:
										raise ValueError("Input must be a positive integer"					)
					return number * (2 * number - 1)


if __name__ == "__main__":
							import doctest

							doctest.testmod()






from __future__ import annotations

from collections.abc import Generator







def  A					(				UpperCAmelCase					):
					if not isinstance(UpperCAmelCase	,	UpperCAmelCase					) or n < 1:
										raise Exception("Sequence only defined for positive integers"					)

					yield n
					while n != 1:
										if n % 2 == 0:
															n //= 2
										else:
															_snake_case							:       Any												= 3 * n + 1
										yield n







def  A					(				):
					_snake_case							:       Dict												= 43
					_snake_case							:       List[str]												= tuple(collatz_sequence(UpperCAmelCase					)					)
					print(UpperCAmelCase					)
					print(F"""Collatz sequence from {n} took {len(UpperCAmelCase					)} steps."""					)


if __name__ == "__main__":
							main()