def corrupt_string(input, to_insert):
    """
    Takes in a base string input and another string to_insert.
    Corrupts the base string by making it so each character is
    followed by the string in to_insert and returns.

    Parameters:
        input: Base string that will be corrupted/modified.
        to_insert: String that is used to corrupt the base string.
    Returns:
        String input that has been corrupted by to_insert.

    >>> corrupt_string('tickets', '#')
    't#i#c#k#e#t#s#'
    >>> corrupt_string('', '@')
    ''
    >>> corrupt_string('buy now', '-')
    'b-u-y- -n-o-w-'

    # Add AT LEAST 3 doctests below, DO NOT delete this line
    >>> corrupt_string('foo', 'bar')
    'fbarobarobar'

    >>> corrupt_string('pokemon', '')
    'pokemon'

    >>> corrupt_string(' frog!', '-')
    ' -f-r-o-g-!-'
    """
    if len(input) == 0:
        return input
    if len(input) == 1:
        return input + to_insert
    return corrupt_string(input[0], to_insert) + \
        corrupt_string(input[1:], to_insert)