code: def get_drug_inhibition_stmts(drug):
      chebi_id = drug.db_refs.get('CHEBI')
      mesh_id = drug.db_refs.get('MESH')
      if chebi_id:
          drug_chembl_id = chebi_client.get_chembl_id(chebi_id)
      elif mesh_id:
          drug_chembl_id = get_chembl_id(mesh_id)
      else:
          logger.error('Drug missing ChEBI or MESH grounding.')
          return None
      logger.info('Drug: %s' % (drug_chembl_id))
      query_dict = {'query': 'activity',
                    'params': {'molecule_chembl_id': drug_chembl_id,
                               'limit': 10000}
                    }
      res = send_query(query_dict)
      activities = res['activities']
      targ_act_dict = activities_by_target(activities)
      target_chembl_ids = [x for x in targ_act_dict]
      protein_targets = get_protein_targets_only(target_chembl_ids)
      filtered_targ_act_dict = {t: targ_act_dict[t]
                                for t in [x for x in protein_targets]}
      stmts = []
      for target_chembl_id in filtered_targ_act_dict:
          target_activity_ids = filtered_targ_act_dict[target_chembl_id]
          target_activites = [x for x in activities
                              if x['activity_id'] in target_activity_ids]
          target_upids = []
          targ_comp = protein_targets[target_chembl_id]['target_components']
          for t_c in targ_comp:
              target_upids.append(t_c['accession'])
          evidence = []
          for assay in target_activites:
              ev = get_evidence(assay)
              if not ev:
                  continue
              evidence.append(ev)
          if len(evidence) > 0:
              for target_upid in target_upids:
                  agent_name = uniprot_client.get_gene_name(target_upid)
                  target_agent = Agent(agent_name, db_refs={'UP': target_upid})
                  st = Inhibition(drug, target_agent, evidence=evidence)
                  stmts.append(st)
      return stmts