<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def new_edge(self, node_a, node_b, cost=1):
 """Adds a new, undirected edge between node_a and node_b with a cost. Returns the edge id of the new edge."""

        edge_id = super(UndirectedGraph, self).new_edge(node_a, node_b, cost)
        self.nodes[node_b]['edges'].append(edge_id)
        return edge_id