def edges_iter(self, nbunch=None, data=False):
        seen={}     # helper dict to keep track of multiply stored edges
        if nbunch is None:
            nodes_nbrs = self.adj.items()
        else:
            nodes_nbrs=((n,self.adj[n]) for n in self.nbunch_iter(nbunch))
        if data:
            for n,nbrs in nodes_nbrs:
                for nbr,data in nbrs.items():
                    if nbr not in seen:
                        yield (n,nbr,data)
                seen[n]=1
        else:
            for n,nbrs in nodes_nbrs:
                for nbr in nbrs:
                    if nbr not in seen:
                        yield (n,nbr)
                seen[n] = 1
        del seen
Put an element into the index at key/value and overwrite it if an 
dataset/ETHPy150Open gkno/gkno_launcher/src/networkx/classes/graph.py/Graph.edges_iter--crossover with--dataset/ETHPy150Open espeed/bulbs/bulbs/rexster/index.py/ManualIndex.put_unique