# Path: indra/ontology/standardize.py
# def get_standard_agent(name, db_refs, ontology=None, ns_order=None, **kwargs):
#     """Get a standard agent based on the name, db_refs, and a any other kwargs.
# 
#     name : str
#         The name of the agent that may not be standardized.
#     db_refs : dict
#         A dict of db refs that may not be standardized, i.e., may be
#         missing an available UP ID corresponding to an existing HGNC ID.
#     ontology : Optional[indra.ontology.IndraOntology]
#         An IndraOntology object, if not provided, the default BioOntology
#         is used.
#     ns_order : Optional[list]
#         A list of namespaces which are in order of priority with higher
#         priority namespaces appearing earlier in the list.
#     kwargs :
#         Keyword arguments to pass to :func:`Agent.__init__`.
# 
#     Returns
#     -------
#     Agent
#         A standard agent
#     """
#     standard_name, db_refs = standardize_name_db_refs(db_refs,
#                                                       ontology=ontology,
#                                                       ns_order=ns_order)
#     if standard_name:
#         name = standard_name
#     assert_valid_db_refs(db_refs)
#     return Agent(name, db_refs=db_refs, **kwargs)


import logging
import pandas as pd
from typing import Iterable, List, Optional, Set, Type
from ...ontology.standardize import get_standard_agent
from ...statements import (
    default_ns_order,
    Activation,
    Complex,
    DecreaseAmount,
    Evidence,
    IncreaseAmount,
    Inhibition,
    Statement,
)
            from .api import get_version_df
                gene_name,
                ncbigene_id,
                source,
                interaction,
                drug_name,
                drug_curie,
                pmids,
            ))
        return self.statements

    def row_to_statements(
        self,
        gene_name,
        ncbigene_id,
        source,
        interactions,
        drug_name,
        drug_curie,
        pmids,
    ) -> Iterable[Statement]:
        """Convert a row in the DGI dataframe to a statement."""
        gene_agent = get_standard_agent(gene_name, {"EGID": ncbigene_id})

        try:
            drug_namespace, drug_identifier = drug_curie.split(":", 1)
            drug_namespace = drug_namespace.upper()
        except ValueError:
            logger.warning("could not parse drug CURIE: %s", drug_curie)
            return


# Path: indra/ontology/standardize.py
# def get_standard_agent(name, db_refs, ontology=None, ns_order=None, **kwargs):
#     """Get a standard agent based on the name, db_refs, and a any other kwargs.
# 
#     name : str
#         The name of the agent that may not be standardized.
#     db_refs : dict
#         A dict of db refs that may not be standardized, i.e., may be
#         missing an available UP ID corresponding to an existing HGNC ID.
#     ontology : Optional[indra.ontology.IndraOntology]
#         An IndraOntology object, if not provided, the default BioOntology
#         is used.
#     ns_order : Optional[list]
#         A list of namespaces which are in order of priority with higher
#         priority namespaces appearing earlier in the list.
#     kwargs :
#         Keyword arguments to pass to :func:`Agent.__init__`.
# 
#     Returns
#     -------
#     Agent
#         A standard agent
#     """
#     standard_name, db_refs = standardize_name_db_refs(db_refs,
#                                                       ontology=ontology,
#                                                       ns_order=ns_order)
#     if standard_name:
#         name = standard_name
#     assert_valid_db_refs(db_refs)
#     return Agent(name, db_refs=db_refs, **kwargs)


# Path: indra/sources/dgi/processor.py
import logging
import pandas as pd
from typing import Iterable, List, Optional, Set, Type
from ...ontology.standardize import get_standard_agent
from ...statements import (
    default_ns_order,
    Activation,
    Complex,
    DecreaseAmount,
    Evidence,
    IncreaseAmount,
    Inhibition,
    Statement,
)
            from .api import get_version_df

                gene_name,
                ncbigene_id,
                source,
                interaction,
                drug_name,
                drug_curie,
                pmids,
            ))
        return self.statements

    def row_to_statements(
        self,
        gene_name,
        ncbigene_id,
        source,
        interactions,
        drug_name,
        drug_curie,
        pmids,
    ) -> Iterable[Statement]:
        """Convert a row in the DGI dataframe to a statement."""
        gene_agent = get_standard_agent(gene_name, {"EGID": ncbigene_id})

        try:
            drug_namespace, drug_identifier = drug_curie.split(":", 1)
            drug_namespace = drug_namespace.upper()
        except ValueError:
            logger.warning("could not parse drug CURIE: %s", drug_curie)
            return


        drug_agent = get_standard_agent(