


import numpy as np





def 	_lowerCAmelCase					( UpperCamelCase__:  Optional[Any]				,       UpperCamelCase__:  Any				,       UpperCamelCase__:  Dict				,       UpperCamelCase__:  int				,       UpperCamelCase__:  List[Any]    )			-> List[str]:





	"""simple docstring"""







	A             =					int(np.ceil((x_end - xa) / h    )    )
	A             =					np.zeros((n + 1,)    )
	A             =					ya
	A             =					xa

	for k in range(UpperCamelCase__    ):
		A             =					f(UpperCamelCase__				,       y[k]    )
		A             =					f(x + 0.5 * h				,       y[k] + 0.5 * h * ka    )
		A             =					f(x + 0.5 * h				,       y[k] + 0.5 * h * ka    )
		A             =					f(x + h				,       y[k] + h * ka    )
		A             =					y[k] + (1 / 6) * h * (ka + 2 * ka + 2 * ka + ka)
		x += h

	return y


if __name__ == "__main__":
				import doctest

				doctest.testmod()







from ..utils import DummyObject, requires_backends






class    _UpperCamelCase     (       metaclass=__snake_case					):

				"""simple docstring"""







				lowerCAmelCase					=			['note_seq']

				def __init__(    self					, *a__					, **a__ )						->					Optional[int]:
					requires_backends(self					, ["""note_seq"""] )

				@classmethod
				def   _UpperCAmelCase       (    cls					, *a__					, **a__ )						->					Dict:
					requires_backends(cls					, ["""note_seq"""] )

				@classmethod
				def   _UpperCAmelCase       (    cls					, *a__					, **a__ )						->					Optional[int]:
					requires_backends(cls					, ["""note_seq"""] )



