code: def run(self):
      install.run(self)  # do the original install steps
  
      # mark the FLAC executables as executable by all users (this fixes occasional issues when file permissions get messed up)
      for output_path in self.get_outputs():
          if os.path.basename(output_path) in FILES_TO_MARK_EXECUTABLE:
              log.info(
                  "setting executable permissions on {}".format(
                      output_path
                  )
              )
              stat_info = os.stat(output_path)
              os.chmod(
                  output_path,
                  stat_info.st_mode
                  | stat.S_IRUSR
                  | stat.S_IXUSR
                  | stat.S_IRGRP  # owner can read/execute
                  | stat.S_IXGRP
                  | stat.S_IROTH  # group can read/execute
                  | stat.S_IXOTH,  # everyone else can read/execute
              )
  
file_path: speech_recognition/setup.py
imports: import os
  import stat
  from setuptools import setup
  from setuptools.command.install import install
  from distutils import log
  import speech_recognition
label_desc: Use image node_id 1 for calling the InstallWithExtraSteps obj's underlying member method code with example usage: obj.run() without return types