
import functools


def    A (      lowercase					, lowercase				)     ->						int:
		'''simple docstring'''

		UpperCamelCase						=  len(a_				)
		UpperCamelCase						=  len(a_				)

		@functools.cache
		def min_distance(lowercase					, lowercase				) -> int:
				# if first word index is overflow - delete all from the second word
				if indexa >= len_worda:
						return len_worda - indexa
				# if second word index is overflow - delete all from the first word
				if indexa >= len_worda:
						return len_worda - indexa
				UpperCamelCase						=  int(worda[indexa] != worda[indexa]				)  # current letters not identical
				return min(
				    1 + min_distance(indexa + 1					, a_				)					, 1 + min_distance(a_					, indexa + 1				)					, diff + min_distance(indexa + 1					, indexa + 1				)					, )

		return min_distance(0					, 0				)


if __name__ == "__main__":
					import doctest

					doctest.testmod()


def    A (      lowercase				)     ->						str:
		'''simple docstring'''

		UpperCamelCase						=  int(lowercase				)
		if decimal in (0, 1):  # Exit cases for the recursion
				return str(lowercase				)
		UpperCamelCase			,						UpperCamelCase						=  divmod(lowercase					, 2				)
		return binary_recursive(lowercase				) + str(lowercase				)


def    A (      lowercase				)     ->						str:
		'''simple docstring'''

		UpperCamelCase						=  str(lowercase				).strip()
		if not number:
				raise ValueError('No input value was provided'				)
		UpperCamelCase						=  '-' if number.startswith('-'				) else ''
		UpperCamelCase						=  number.lstrip('-'				)
		if not number.isnumeric():
				raise ValueError('Input value is not an integer'				)
		return f'''{negative}0b{binary_recursive(int(lowercase				)				)}'''


if __name__ == "__main__":
					from doctest import testmod

					testmod()
