def METHOD_NAME(state: StateInline, delimiters: List[Delimiter]) -> None:
    lone_markers = []
    maximum = len(delimiters)
    for i in range(0, maximum):
        start_delim = delimiters[i]
        if start_delim.marker != ord(EQUALS_CHAR):
            i += 1
            continue
        if start_delim.end == -1:
            i += 1
            continue
        end_delim = delimiters[start_delim.end]
        token = state.tokens[start_delim.token]
        token.type = 'mark_open'
        token.tag = 'mark'
        token.nesting = 1
        token.markup = EQUALS_CHAR * 2
        token.content = ''
        token = state.tokens[end_delim.token]
        token.type = 'mark_close'
        token.tag = 'mark'
        token.nesting = -1
        token.markup = EQUALS_CHAR * 2
        token.content = ''
        end_token = state.tokens[end_delim.token - 1]
        if end_token.type == 'text' and end_token == EQUALS_CHAR:  # nosec
            lone_markers.append(end_delim.token - 1)
    # If a marker sequence has an odd number of characters, it's split
    # like this: `=====` -> `=` + `==` + `==`, leaving one marker at the
    # start of the sequence.
    #
    # So, we have to move all those markers after subsequent mark_close tags.
    #
    while lone_markers:
        i = lone_markers.pop()
        j = i + 1
        while j < len(state.tokens) and state.tokens[j].type == 'mark_close':
            j += 1
        j -= 1
        if i != j:
            token = state.tokens[j]
            state.tokens[j] = state.tokens[i]
            state.tokens[i] = token