code: def _detect(self):
          
          results = []
          for c in self.slither.contracts_derived:
              ret = self.detect_uninitialized(c)
              for variable, functions in ret:
                  info = "{}.{} ({}) is never initialized. It is used in:\n"
                  info = info.format(variable.contract.name,
                                     variable.name,
                                     variable.source_mapping_str)
                  for f in functions:
                      info += "\t- {} ({})\n".format(f.name, f.source_mapping_str)
  
                  source = [variable.source_mapping]
                  source += [f.source_mapping for f in functions]
  
                  json = self.generate_json_result(info)
                  self.add_variable_to_json(variable, json)
                  self.add_functions_to_json(functions, json)
                  results.append(json)
  
          return results
docs: Detect uninitialized state variables
  
          Recursively visit the calls
          Returns:
              dict: [contract name] = set(state variable uninitialized)