






def    lowerCAmelCase__		(			_a				:	Dict     ,					_a				:	List[str]			):
		if len(str(_a			)			) == 1 or len(str(_a			)			) == 1:
				return a * b

		snake_case_ :							Optional[int]         =				max(len(str(_a			)			)     ,					len(str(_a			)			)			)
		snake_case_ :							int         =				ma // 2

		snake_case_       ,				snake_case_ :							Tuple         =				divmod(_a     ,					10**ma			)
		snake_case_       ,				snake_case_ :							List[str]         =				divmod(_a     ,					10**ma			)

		snake_case_ :							Tuple         =				karatsuba(_a     ,					_a			)
		snake_case_ :							List[str]         =				karatsuba((aa + aa)     ,					(ba + ba)			)
		snake_case_ :							Tuple         =				karatsuba(_a     ,					_a			)

		return (z * 10 ** (2 * ma)) + ((y - z - x) * 10 ** (ma)) + (x)

def    lowerCAmelCase__		(			):
		print(karatsuba(1_54_63     ,					2_34_89			)			)


if __name__ == "__main__":
							main()








from __future__ import annotations

from collections.abc import Generator

def    lowerCAmelCase__		(			_a				:	int			):
		if not isinstance(_a     ,					_a			) 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_ :							List[str]         =				3 * n + 1
				yield n

def    lowerCAmelCase__		(			):
		snake_case_ :							Optional[int]         =				43
		snake_case_ :							Union[str, Any]         =				tuple(collatz_sequence(_a			)			)
		print(_a			)
		print(F'''Collatz sequence from {n} took {len(_a			)} steps.'''			)


if __name__ == "__main__":
							main()
