<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def overwrite(char_list: List[str], regexp: str, quality: str, offset: int = 0) -> List[str]: """ Given a list of characters and spaces, a matching regular expression, and a quality or character, replace the matching character with a space, overwriting with an offset and a multiplier if provided. :param char_list: :param regexp: :param quality: :param offset: :return: ['m', 'u', 'l', 't', ' ', ' ', 'i', 'g', 'n', 'e'] """

    long_matcher = re.compile(regexp)
    line = "".join(char_list)
    long_positions = long_matcher.finditer(line)
    for match in long_positions:
        (start, end) = match.span()  # pylint: disable=unused-variable
        char_list[start + offset] = quality
    return char_list