add all_edges function