def fnd_contnrs_not_represntd(contnrs, results):
    """Identify containers that have no representative elements in results.
    Something likely failed for the containers with no results.

    :param contnrs: A list of containers (MolContainer.MolContainer).
    :type contnrs: list
    :param results: A list of MyMol.MyMol objects.
    :type results: list
    :return: A list of integers, the indecies of the contnrs that have no
       associated elements in the results.
    :rtype: list
    """

    # Find ones that don't have any generated. In the context of ionization,
    # for example, this is because sometimes Dimorphite-DL failes to producce
    # valid smiles. In this case, just use the original smiles. Couldn't find
    # a good solution to work around.

    # Get a dictionary of all the input smiles. Keys are indexes, values are
    # smiles.
    idx_to_smi = {}
    for idx in range(0,len(contnrs)):
        contnr = contnrs[idx]
        if not idx in idx_to_smi:
            idx_to_smi[idx] = contnrs[idx].orig_smi_deslt

    # Now remove from those any that have associated ionized smiles strings.
    # These are represented, and so you don't want to include them in the
    # return.
    for m in results:
        if m.contnr_idx in idx_to_smi:
            del idx_to_smi[m.contnr_idx]

    # Return just the container indexes (the keys).
    return list(idx_to_smi.keys())