code: def make_score_structure(molecules, ensemble):
      
      # sort molecules by their ensemble score
      #sort_order = get_sort_order(molecules)
      sort_order = 'asc'
      sorted_molecules = screener.screener(molecules, ensemble, sort_order)
  
      # initiate variables
      score_structure = []
      net_active_count = 0
      net_decoy_count = 0
  
      for mol in sorted_molecules:
          # determine net active count & net decoy count
          status = mol.GetProp('status')
          if status == '1':
              net_active_count += 1
          elif status == '0':
              net_decoy_count += 1
          else:
              continue
  
          score_structure.append((mol.GetProp('id'), mol.GetProp('best_score'), mol.GetProp('best_query'), status,
                                  net_decoy_count, net_active_count))
  
      return score_structure
docs: puts data in the score_structure format for subsequent processing
      :param molecules: list [mol_object_1, mol_object_2, .... ] mol_objects are instances of common_tools.molecules
      :return score_structure: list [(id, best_score, best_query, status, net decoy count, net active count), ..., ]