code: def _partition_results(self, results):
          ''' seperate results by ones we contacted & ones we didn't '''
  
          if results is None:
              return None
          results2 = dict(contacted={}, dark={})
  
          for result in results:
              host = result.host
              if host is None:
                  raise Exception("internal error, host not set")
              if result.communicated_ok():
                  results2["contacted"][host] = result.result
              else:
                  results2["dark"][host] = result.result
  
          # hosts which were contacted but never got a chance to return
          for host in self.inventory.list_hosts(self.pattern):
              if not (host in results2['dark'] or host in results2['contacted']):
                  results2["dark"][host] = {}
          return resultsf _partition_results(self, results):
          ''' seperate results by ones we contacted & ones we didn't '''
  
          if results is None:
              return None
          results2 = dict(contacted={}, dark={})
  
          for result in results:
              host = result.host
              if host is None:
                  raise Exception("internal error, host not set")
              if result.communicated_ok():
                  results2["contacted"][host] = result.result
              else:
                  results2["dark"][host] = result.result
  
          # hosts which were contacted but never got a chance to return
          for host in self.inventory.list_hosts(self.pattern):
              if not (host in results2['dark'] or host in results2['contacted']):
                  results2["dark"][host] = {}
          return results2
docs: seperate results by ones we contacted & ones we didn't