code: def select_Heavy(self, exclude_symmetry_related=False):
          
          if exclude_symmetry_related:
              exclusions = []
  
              exclusions.append("mass < 2")
              exclusions.append("(resname == VAL and name == CG)")
              exclusions.append("(resname == LEU and name == CD)")
              exclusions.append("(resname == PHE and name == CD) or (resname == PHE and name == CE)")
              exclusions.append("(resname == TYR and name == CD) or (resname == TYR and name == CE)")
              exclusions.append("(resname == GLU and name == OD1) or (resname == GLU and name == OD2)")
              exclusions.append("(resname == ASP and name == OG1) or (resname == ASP and name == OG2)")
              exclusions.append("(resname == HIS and name == ND1) or (resname == HIS and name == NE2)")
              exclusions.append("(resname == ARG and name == NH1) or (resname == ARG and name == NH2)")
  
              exclusion_string = ' or '.join(exclusions)
              selection_string = 'not (' + exclusion_string + ')'
  
              return self.topology.select(selection_string)
          else:
              return self.topology.select("mass >= 2")
docs: Returns the indexes of all heavy atoms (Mass >= 2),
          optionally excluding symmetry-related heavy atoms.
  
          Parameters
          ----------
          exclude_symmetry_related : boolean, default=False
              if True, exclude symmetry-related heavy atoms.
  
          Returns
          -------
          indexes : ndarray((n), dtype=int)
              array with selected atom indexes