def METHOD_NAME(self):
    """
    edges are sorted by
    1) ascending target nodes and
    2) descending source nodes
    """
    ordered = []
    sources = sorted(set(int(e[0]) for e in list(self.edges)), reverse=True)
    targets = sorted(set(int(e[1]) for e in list(self.edges)))
    for target in targets:
        for source in sources:
            edge = (str(source), str(target))
            if edge in self.edges:
                ordered.append(edge)
    return ordered