

def 			_UpperCAmelCase							(		a__       ,					a__):

			'''simple docstring'''



			if len(str(a__)) == 1 or len(str(a__)) == 1:
						return a * b

			a_		:		Union[str, Any]				    =				max(len(str(a__))       ,					len(str(a__)))
			a_		:		str				    =				ma // 2

			a_    ,			a_		:		List[Any]				    =				divmod(a__       ,					1_0**ma)
			a_    ,			a_		:		int				    =				divmod(a__       ,					1_0**ma)

			a_		:		Union[str, Any]				    =				karatsuba(a__       ,					a__)
			a_		:		Optional[int]				    =				karatsuba((aa + aa)       ,					(ba + ba))
			a_		:		Tuple				    =				karatsuba(a__       ,					a__)

			return (z * 1_0 ** (2 * ma)) + ((y - z - x) * 1_0 ** (ma)) + (x)


def 			_UpperCAmelCase							(		):

			'''simple docstring'''



			print(karatsuba(1_5_4_6_3       ,					2_3_4_8_9))


if __name__ == "__main__":
	main()





def 			_UpperCAmelCase							(		a__):

			'''simple docstring'''



			return 1 if input_a == 0 else 0


def 			_UpperCAmelCase							(		):

			'''simple docstring'''



			assert not_gate(0) == 1
			assert not_gate(1) == 0


if __name__ == "__main__":
	print(not_gate(0))
	print(not_gate(1))


