code: def find_keyword_in_context(tokens, keyword, contextsize=1):
      
      if isinstance(keyword,tuple) and isinstance(keyword,list):
          l = len(keyword)
      else:
          keyword = (keyword,)
          l = 1
      n = l + contextsize*2
      focuspos = contextsize + 1
      for ngram in Windower(tokens,n,None,None):
          if ngram[focuspos:focuspos+l] == keyword:
              yield ngram[:focuspos], ngram[focuspos:focuspos+l],ngram[focuspos+l+1:]
docs: Find a keyword in a particular sequence of tokens, and return the local context. Contextsize is the number of words to the left and right. The keyword may have multiple word, in which case it should to passed as a tuple or list