Yield edges in the initial (uncompressed) graphs. Possible doublons.

def initial_edges(self) -> iter:
        """Yield edges in the initial (uncompressed) graphs. Possible doublons."""
        nodes_in = lambda n: ([n] if self.is_node(n) else self.nodes_in(n))
        for node, succs in self.edges.items():
            twos = tuple(two for succ in succs for two in nodes_in(succ))
            for one in nodes_in(node):
                for two in twos:
                    yield one, two