<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def _get_fuzzy_tc_matches(text, full_text, options):
    '''
    Get the options that match the full text, then from each option
    return only the individual words which have not yet been matched
    which also match the text being tab-completed.
    '''
    print("text: {}, full: {}, options: {}".format(text, full_text, options))
    # get the options which match the full text
    matching_options = _get_fuzzy_matches(full_text, options)
    # need to only return the individual words which:
    # - match the 'text'
    # - are not exclusively matched by other input in full_text
    # - when matched, still allows all other input in full_text to be matched
    # get the input tokens
    input_tokens = full_text.split()
    # remove one instance of the text to be matched
    initial_tokens = input_tokens.remove(text)
    # track the final matches:
    final_matches = []
    # find matches per option
    for option in options:
        option_tokens = option.split()
        # get tokens which match the text
        matches = [t for t in option_tokens if text in t]
        # get input tokens which match one of the matches
        input_tokens_which_match = [t for t in input_tokens for m in matches if t in m]
        # if any input token ONLY matches a match, remove that match
        for token in input_tokens_which_match:
            token_matches = [t for t in option_tokens if token in t]
            if len(token_matches) == 1:
                match = token_matches[0]
                if match in matches:
                    matches.remove(match)
        # for the remaining matches, if the input tokens can be fuzzily matched without
        # the match, it's ok to return it.
        for match in matches:
            # copy option tokens
            option_tokens_minus_match = option_tokens[:]
            # remove the match
            option_tokens_minus_match.remove(match)
            option_minus_match = ' '.join(option_tokens_minus_match)
            if _get_fuzzy_matches(' '.join(input_tokens), [option_minus_match]):
                if match not in final_matches:
                    final_matches.append(match)
    return final_matches