def replace_clitics(token_sentence):
    """
    replaces clitics like "'m" or "n't" with their full orthographic forms (e.g. "'m" --> "am", "n't" --> "not")
    """
    s = ' '.join(token_sentence)
    s = ' ' + s + ' '

    # map clitics to their full forms
    clitic_dict = {"'m ": ' am ', "'re ": ' are ', "'s ": ' is ', "'ve ": ' have ', "n't ": ' not ',
                   "'ll": ' will ', "'d ": ' would ', 'not ': ' not ', 'gonna': ' going to '}

    # replace clitcs with full form
    for clitic, full_form in clitic_dict.items():
            s = s.replace(clitic, full_form)

    return s.split()