# Learn Algorithm Design by Building a Shortest Path Algorithm - Step 29

### Tell us what’s happening:

Unable to figure this out, trying the syntax given but it doesn’t work

my_graph = {
'A': [('B', 3), ('D', 1)],
'B': [('A', 3), ('C', 4)],
'C': [('B', 4), ('D', 7)],
'D': [('A', 1), ('C', 7)]
}

/* User Editable Region */

def shortest_path(graph, start):
unvisited = list(graph)
distances = {}
paths = {key: val for key in graph}

print(f'Unvisited: {unvisited}\nDistances: {distances}')

shortest_path(my_graph, 'A')

/* User Editable Region */

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

### Challenge Information:

Learn Algorithm Design by Building a Shortest Path Algorithm - Step 29

Assign an empty list to each key

are you doing this?

you almost there,

Assign an empty list to each key.

In your current code, you are assigning val to each key…

The empty list should replace the val in your code.