euler cost = (iter $ initPath cost) ! snd (bounds cost)
  where
    iter path = if (path == path') then path else iter path'
      where path' = improve path cost
euler cost = (iter $ initPath cost) ! snd (bounds cost)
  where
    iter path = if (path == path') then path else iter path'
      where path' = improve path cost
euler cost = (iter $ initPath cost) ! snd (bounds cost)
  where
    iter path = if (path == path') then path else iter path'
      where path' = improve path cost