code: def _change_mode(self, file):
      if self.dry_run:
          log.info("changing mode of %s", file)
          return
  
      oldmode = os.stat(file)[ST_MODE] & 0o7777
      newmode = (oldmode | 0o555) & 0o7777
      if newmode != oldmode:
          log.info(
              "changing mode of %s from %o to %o",
              file,
              oldmode,
              newmode,
          )
          os.chmod(file, newmode)
  
file_path: catboost/contrib/python/setuptools/py3/setuptools/_distutils/command/build_scripts.py
imports: import os
  import re
  from stat import ST_MODE
  from distutils import sysconfig
  from ..core import Command
  from .._modified import newer
  from ..util import convert_path
  from distutils._log import log
  import tokenize
label_desc: Use image node_id 8 for calling the build_scripts obj's underlying member method code with example usage: obj._change_mode(file) without return types