code: def _shared_solvers(self, others):
          
  
          solvers_by_id = { id(s): s for s in self._solver_list }
          common_solvers = set(solvers_by_id.keys())
          other_sets = [ { id(s) for s in cs._solver_list } for cs in others ]
          for o in other_sets: common_solvers &= o
  
          return [ solvers_by_id[s] for s in common_solvers ]
docs: Returns a sequence of the solvers that self and others share.