code: def translate_dialog_to_lists(dialog_filename):
      
  
      dialog_file = open(dialog_filename, 'r')
      dialog_reader = unicodecsv.reader(dialog_file, delimiter='\t', quoting=csv.QUOTE_NONE)
  
      # go through the dialog
      first_turn = True
      dialog = []
      same_user_utterances = []
      #last_user = None
      dialog.append(same_user_utterances)
  
      for dialog_line in dialog_reader:
  
          if first_turn:
              last_user = dialog_line[1]
              first_turn = False
  
          if last_user != dialog_line[1]:
              # user has changed
              same_user_utterances = []
              dialog.append(same_user_utterances)
  
          same_user_utterances.append(dialog_line[3])
  
          last_user = dialog_line[1]
  
      dialog.append([dialog_end_symbol])
  
      return dialog
docs: Translates the dialog to a list of lists of utterances. In the first
      list each item holds subsequent utterances from the same user. The second level
      list holds the individual utterances.
      :param dialog_filename:
      :return: