code: def build_vocab(nested_list):
      
      # Build vocabulary
      word_counts = Counter(itertools.chain(*nested_list))
  
      # Mapping from index to label
      vocabulary_inv = [x[0] for x in word_counts.most_common()]
  
      # Mapping from label to index
      vocabulary = {x: i for i, x in enumerate(vocabulary_inv)}
      return vocabulary, vocabulary_inv
docs: :param nested_list: list of list of string
      :return: dictionary mapping from string to int, inverse of that dictionary