docs: def unparse(self, dn, record):
          """Write an entry or change record to the output file.
  
          :type dn: string
          :param dn: distinguished name
  
          :type record: Union[Dict[string, List[string]], List[Tuple]]
          :param record: Either a dictionary holding  an entry or a list of
              additions (2-tuple) or modifications (3-tuple).
          """
          self._unparse_attr('dn', dn)
          if isinstance(record, dict):
              self._unparse_entry_record(record)
          elif isinstance(record, list):
              self._unparse_change_record(record)
          else:
              raise ValueError("Argument record must be dictionary or list")
          self._output_file.write(self._line_sep)
          self.records_written += 1