






from collections.abc import Callable

import numpy as np




def      lowercase__      (     __snake_case    :							Callable     ,       __snake_case    :							float     ,       __snake_case    :							float     ,       __snake_case    :							float     ,       __snake_case    :							float  ):


					'''simple docstring'''


					UpperCAmelCase_    :      str            =						int(np.ceil((x_end - xa) / step_size  )  )
					UpperCAmelCase_    :      Optional[Any]            =						np.zeros((n + 1,)  )
					UpperCAmelCase_    :      Union[str, Any]            =						ya
					UpperCAmelCase_    :      List[Any]            =						xa

					for k in range(__snake_case  ):
										UpperCAmelCase_    :      Any            =						y[k] + step_size * ode_func(__snake_case     ,       y[k]  )
										x += step_size

					return y


if __name__ == "__main__":
		import doctest

		doctest.testmod()














def      lowercase__      (     __snake_case    :							int     ,       __snake_case    :							int  ):


					'''simple docstring'''


					if a < 0 or b < 0:
										raise ValueError('the value of both inputs must be positive'  )

					UpperCAmelCase_    :      Tuple            =						str(bin(__snake_case  )  )[2:]  # remove the leading "0b"
					UpperCAmelCase_    :      Union[str, Any]            =						str(bin(__snake_case  )  )[2:]  # remove the leading "0b"

					UpperCAmelCase_    :      List[Any]            =						max(len(__snake_case  )     ,       len(__snake_case  )  )

					return "0b" + "".join(
					    str(int(char_a == '1' and char_b == '1'  )  )
					    for char_a, char_b in zip(a_binary.zfill(__snake_case  )     ,       b_binary.zfill(__snake_case  )  )  )


if __name__ == "__main__":
		import doctest

		doctest.testmod()






