diff --git a/ov9/program1.py b/ov9/program1.py
index 0b29ab22b49be4d201cad6d0aa25cdf3c4072abf..f399d778c784f02aeeb4acf225ebc8f1e42618a9 100644
--- a/ov9/program1.py
+++ b/ov9/program1.py
@@ -47,7 +47,7 @@ with open('./test_files/kanter.txt','r') as file:
     edge_file = file.read()
 
 edge_file = edge_file.split()
-num_of_edges = edge_file[0]
+num_of_edges = int(edge_file[0])
 edge_file.pop(0)
 
 edge_arr = []
@@ -60,7 +60,7 @@ with open('./test_files/interessepkt.txt','r') as file:
     intresting_file = file.read()
 
 intresting_file = intresting_file.split('\n')
-num_of_intresting = intresting_file[0]
+num_of_intresting = int(intresting_file[0])
 intresting_file.pop(0)
 
 intresting_arr = []
@@ -84,6 +84,8 @@ def rec_func(node, counter, global_fra):
 
 def calculate_shortest_path(b, i, a, global_fra):
     print('in calculate')
+    res_a = [a for a in res_arr if a == a.node]
+    print(f'curr_node: {b.node}, edge_time: {i}, curr_neig_node: {a.node}, curr_neig_prev: {a.prev}, global_fra: {global_fra}')
     count_a = 0
     count_a = rec_func(a, count_a, global_fra)
     count_b = 0
@@ -95,10 +97,12 @@ def calculate_shortest_path(b, i, a, global_fra):
         return False
 
 
-
+round = 0
 queue = []
-def dijkstras(global_fra, fra, til):
-    print(queue)
+def dijkstras(slutt, fra, start):
+    global round
+    round +=1 
+    print('runde: ', round, ' queue: ', queue)
     current_node = [b for b in res_arr if b.node == fra][0]
     print(current_node.node)
     for tmp_edge in edge_arr:
@@ -107,33 +111,36 @@ def dijkstras(global_fra, fra, til):
             if current_neighbour:
                 if current_neighbour.visited == False:
                     print(f'fra: {fra}, a: {current_neighbour.visited}, til  {tmp_edge.til}')
-                    if global_fra == fra: 
+                    if start == fra: 
                         if tmp_edge.time < current_neighbour.time:
                             current_neighbour.time = tmp_edge.time
                             current_neighbour.prev = fra 
-                        if tmp_edge.til not in queue:
-                            if tmp_edge.til == til:
-                                current_node.visited = True
-                                queue.pop(0)
-                                dijkstras(global_fra, til, til)
-                            else:
-                                queue.append(tmp_edge.til)
-                elif current_neighbour.visited == True and current_neighbour.node != global_fra:
-                    if calculate_shortest_path(current_node, tmp_edge.time, current_neighbour, global_fra):
+                    if tmp_edge.til not in queue:
+                        if tmp_edge.til == slutt:
+                            current_node.visited = True
+                            queue.pop(0)
+                            dijkstras(start, slutt, slutt)
+                        else:
+                            queue.append(tmp_edge.til)
+
+                elif current_neighbour.visited == True and current_neighbour.node != start:
+                    print(current_node.node, tmp_edge.time, current_neighbour.node, start)
+                    if calculate_shortest_path(current_node, tmp_edge.time, current_neighbour, start):
+                        current_neighbour.time = tmp_edge.time
                         current_neighbour.prev = tmp_edge.fra
 
-    if fra == til: 
+    if fra == slutt: 
         #not finished
+        print('sho')
         for i in res_arr:
             if i.time != inf:
                 print(i.node, i.time, i.prev, i.visited)
         exit()
+
     else:
         queue.pop(0)
         current_node.visited = True
-        dijkstras(global_fra,queue[0],til)
-    
-            
+        dijkstras(start,queue[0],slutt)
              
 
 
@@ -144,13 +151,13 @@ def init_things():
     if len(sys.argv) > 1:
         if sys.argv[1] == '-d':
             #node_id
-            fra = 0
-            til = 1
+            start = 0
+            slutt = 2
             init_table()
-            queue.append(fra)
-            a_start_node  = [a for a in res_arr if a.node == fra][0]
-            a_start_node.time = 0
-            dijkstras(fra, fra, til)
+            queue.append(start)
+            start_node  = [a for a in res_arr if a.node == slutt][0]
+            start_node.time = 0
+            dijkstras(slutt, start, start)
         elif sys.argv[1] == '-a':
             print('A* not yet implemented')
         else: