def findEgammaPaths(process):
    """
    returns a dict:

     {
       "singleElectron": [ list of single electron path objects ],
       "doubleElectron": [ list of double electron path objects ],
       "singlePhoton":   [ list of single photon path objects ],
       "doublePhoton":   [ list of double photon path objects ],
     }

     Note that the elements in the lists are path objects, not path names.

     Note also that this is based on the name of the paths using some
     heuristics.
     """

    retval = { "singleElectron": [],
               "doubleElectron": [],
               "singlePhoton":   [],
               "doublePhoton":   [],
               }
    
    for path_name, path in process.paths.items():

        # print "XX",path_name.__class__,path.__class__

        if path_name.startswith("AlCa_"):
            continue

        if path_name.startswith("DQM_"):
            continue

        if not path_name.startswith("HLT_"):
            continue

        if path_name.startswith("HLT_Ele"):
            retval['singleElectron'].append(path)
            continue
        
        if path_name.startswith("HLT_Photon"):
            retval['singlePhoton'].append(path)
            continue

        if path_name.startswith("HLT_DoublePhoton"):
            retval['doublePhoton'].append(path)
            continue

        if path_name.startswith("HLT_DoubleEle"):
            retval['doubleElectron'].append(path)
            continue

    # end of loop over paths
    return retval