

def 	__a     (      A__			:  str			,  A__			:  str = " "       ):
    SCREAMING_SNAKE_CASE										=   []

    SCREAMING_SNAKE_CASE										=   0
    for index, char in enumerate(A__       ):
        if char == separator:
            split_words.append(string[last_index:index]       )
            SCREAMING_SNAKE_CASE										=   index + 1
        elif index + 1 == len(A__       ):
            split_words.append(string[last_index : index + 1]       )
    return split_words


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

    testmod()


from collections.abc import Callable

import numpy as np





def 	__a     (      A__			:  Callable			,  A__			:  float			,  A__			:  float			,  A__			:  float			,  A__			:  float       ):
    SCREAMING_SNAKE_CASE										=   int(np.ceil((x_end - xa) / step_size       )       )
    SCREAMING_SNAKE_CASE										=   np.zeros((n + 1,)       )
    SCREAMING_SNAKE_CASE										=   ya
    SCREAMING_SNAKE_CASE										=   xa

    for k in range(A__       ):
        SCREAMING_SNAKE_CASE										=   y[k] + step_size * ode_func(A__			,  y[k]       )
        SCREAMING_SNAKE_CASE										=   y[k] + (
            (step_size / 2) * (ode_func(A__			,  y[k]       ) + ode_func(x + step_size			,  A__       ))
        )
        x += step_size

    return y


if __name__ == "__main__":
    import doctest

    doctest.testmod()