docs: def _run_first(self, source_file):
          """Run on as first in chain."""
  
          self.reset()
          self.current_encoding = self.default_encoding
          encoding = None
          try:
              encoding = self._detect_encoding(source_file)
              content = self.filter(source_file, encoding)
          except UnicodeDecodeError:
              if not encoding or encoding != self.default_encoding:
                  content = self.filter(source_file, self.default_encoding)
              else:
                  raise
          return content