docs: def _analyze_file(self, f):
          """Analyze the file."""
  
          f.seek(0)
          # Check for BOMs
          if self.CHECK_BOM:
              encoding = self.has_bom(f)
              f.seek(0)
          else:
              util.warn_deprecated(
                  "'CHECK_BOM' attribute is deprecated. "
                  "Please override 'has_bom` function to control or avoid BOM detection."
              )
          # Check file extensions
          if encoding is None:
              encoding = self._utf_strip_bom(self.header_check(f.read(1024)))
              f.seek(0)
          if encoding is None:
              encoding = self._utf_strip_bom(self.content_check(f))
              f.seek(0)
  
          return encoding