docs: def binding_site_mol2(self, residues, force_rerun=False):
          """Create mol2 of only binding site residues from the receptor
  
          This function will take in a .pdb file (preferably the _receptor_noH.pdb file)
          and a string of residues (eg: '144,170,199') and delete all other residues in the
          .pdb file. It then saves the coordinates of the selected residues as a .mol2 file.
          This is necessary for Chimera to select spheres within the radius of the binding
          site.
  
          Args:
              residues (str): Comma separated string of residues (eg: '144,170,199')
              force_rerun (bool): If method should be rerun even if output file exists
  
          """
          log.debug('{}: running binding site isolation...'.format(self.id))
  
          if not self.receptorpdb_path:
              return ValueError('Please run protein_only_and_noH')
  
          prefix = self.id + '_' + 'binding_residues'
          mol2maker = op.join(self.dock_dir, '{}_make_mol2.py'.format(prefix))
          outfile = op.join(self.dock_dir, '{}.mol2'.format(prefix))
  
          if ssbio.utils.force_rerun(flag=force_rerun, outfile=outfile):
              with open(mol2maker, 'w') as mol2_maker:
                  mol2_maker.write('#! /usr/bin/env python\n')
                  mol2_maker.write('from chimera import runCommand\n')
                  mol2_maker.write('runCommand("open {}")\n'.format(self.receptorpdb_path))
                  mol2_maker.write('runCommand("delete ~:{}")\n'.format(residues))
                  mol2_maker.write('runCommand("write format mol2 resnum 0 {}")\n'.format(outfile))
                  mol2_maker.write('runCommand("close all")')
  
              cmd = 'chimera --nogui {}'.format(mol2maker)
              os.system(cmd)
              os.remove(mol2maker)
              os.remove('{}c'.format(mol2maker))
  
          if ssbio.utils.is_non_zero_file(outfile):
              self.bindingsite_path = outfile
              log.debug('{}: successful binding site isolation'.format(self.bindingsite_path))
          else:
              log.critical('{}: binding_site_mol2 failed to run on receptor file'.format(self.receptorpdb_path))